Лучшее решение для того, чтобы все выглядело так, как хочет большинство людей, - это использовать анонимную функцию:
alert('start');
var a = 'foo';
//lots of code
setTimeout(function(){ //Beginning of code that should run AFTER the timeout
alert(a);
//lots more code
},5000); // put the timeout here
Это, вероятно, самое близкое к тому, что вы просто делаете, что хотите.
Обратите внимание, что если вам нужно многократные спячки, это может стать уродливым в спешке, и вам действительно понадобится переосмыслить ваш дизайн.
В простых словах tabindex
используется для фокусировки на элементах. Синтаксис: tabindex="numeric_value"
Этот numeric_value
- вес элемента. Вначале будет доступно более низкое значение.
Его можно использовать для изменения последовательности навигации по фокусу элемента формы по умолчанию.
Итак, если у вас есть:
text input A
text input B
submit button C
с помощью клавиши табуляции, вы перемещаетесь по A -> В-> С. Tabindex позволяет вам изменять этот поток.
Управление порядком табуляции (нажатие клавиши табуляции для перемещения фокуса) на странице.
Ссылка: http://www.w3.org/TR/html401/interact/forms .html # ч-17.11.1
установленные вами значения определяют порядок перемещения фокуса клавиатуры между элементами на веб-сайте.
В следующем примере при первом нажатии вкладки курсор переместится на #foo, затем #awesome, а затем #bar
<input id="foo" tabindex="1" />
<input id="bar" tabindex="3" />
<input id="awesome" tabindex="2" />
Если вы не указали индексы табуляции в любом месте, фокус клавиатуры будет следовать тегам HTML вашей страницы в том порядке, в котором они определены в документе HTML.
Если вы набрали больше времени, чем указали tabindexes, фокус будет двигаться так, как если бы не были табуиндексы, то есть в порядке появления HTML-тегов
Вкладка элементов управления обычно выполняется последовательно, как они появляются в HTML-коде.
Используя tabindex, табуляция будет проходить из элемента управления с самым низким tabindex в элемент управления с самым высоким табуиндеком в последовательном порядке tabindex
tabindex
является глобальным атрибутом , ответственным за две вещи:
На мой взгляд, вторая вещь еще важнее первой. Есть очень мало элементов, которые по умолчанию настраиваются ( например, & lt; a & gt; и элементы управления формой). Разработчики очень часто добавляют некоторые обработчики событий JavaScript (например, «onclick») на не сфокусированные элементы (& lt; div & gt ;, & lt; span & gt; и т. д.) и способ сделать ваш интерфейс чтобы реагировать не только на события мыши, но и на события клавиатуры (например, «onkeypress»), а также на то, чтобы такие элементы были сфокусированы. В последнем случае, если вы не хотите устанавливать порядок, а просто используете свой элемент для фокусировки tabindex="0"
на всех таких элементах:
<div tabindex="0"></div>
Также, если вы не хотите, чтобы это было сфокусировано с помощью клавиши табуляции, используйте tabindex="-1"
. Например, ссылка ниже не будет сфокусирована при использовании клавиш табуляции для прохождения.
<a href="#" tabindex="-1">Tab key cannot reach here!</a>
Обычно, когда пользователь вводит поле из поля в поле в форме (в браузере, который позволяет делать табуляции, а не во всех браузерах), порядок - это порядок, в котором поля отображаются в HTML-коде.
, иногда вы хотите, чтобы порядок вкладок шел немного по-другому. В этом случае вы можете указать поля с помощью TABINDEX. Затем вкладки текут по порядку от самого низкого TABINDEX до самого высокого.
Более подробную информацию об этом можно найти здесь w3
можно найти другую хорошую иллюстрацию здесь
Атрибут HTML tabindex отвечает за указание того, доступен ли элемент для навигации по клавиатуре. Когда пользователь нажимает клавишу Tab, фокус смещается от одного элемента к другому. Используя атрибут tabindex, поток порядка вкладок смещается.
Когда пользователь нажимает кнопку табуляции, пользователь будет проходить через форму в порядке 1, 2 и 3, как показано в примере ниже.
Например:
Name: <input name="name" tabindex="1" />
Age: <input name="age" tabindex="3" />
Email: <input name="email" tabindex="2" />
tabindex используется для определения последовательности, которой следуют пользователи, когда они используют клавишу Tab для перемещения по странице. По умолчанию естественный порядок табуляции будет соответствовать порядку источника в разметке.
Атрибут содержимого tabindex позволяет авторам контролировать, должен ли элемент быть ориентируемым, должен ли он быть доступен используя последовательную навигацию по фокусу, и каков должен быть относительный порядок элемента для целей последовательной навигационной навигации. Имя «индекс вкладки» происходит от общего использования клавиши «табуляция» для перемещения по элементам, которые можно сфокусировать. Термин «табуляция» относится к перемещению вперед через фокусируемые элементы, которые могут быть достигнуты с помощью последовательной навигации фокусировки. Рекомендация W3C: HTML5 Раздел 7.4.1 Последовательная фокусировка и атрибут tabindex
blockquote>
tabindex
начинается с 0 или любого положительного целого числа и увеличивается вверх. Обычно считается, что значение 0 избегается, потому что в более старых версиях Mozilla и IE tabindex начинается с 1, переходите к 2 и только после того, как 2 будет идти до 0, а затем 3. Максимальное целочисленное значение дляtabindex
32767
. Если элементы имеют одинаковыйtabindex
, то tabindex будет соответствовать порядку источника в разметке. Отрицательное значение удалит элемент из индекса табуляции, поэтому он никогда не будет сфокусирован.Если элементу присваивается
tabindex
из-1
, он удаляет элемент, и он никогда не будет фокусироваться, но фокус может быть присвоен элементу программным способом с помощьюelement.focus()
.Если вы укажете атрибут
tabindex
без значения или пустого значения, он будет проигнорирован.Если кнопка
disabled
установлен на элементе, который имеетtabindex
, элемент будет проигнорирован.
Если параметр
tabindex
установлен в любом месте страницы независимо от того, где он относится к остальная часть кода (это может быть в нижнем колонтитуле, области содержимого, где-когда-либо), если есть определенныйtabindex
, тогда порядок табуляции начинается с элемента, которому явно назначается наименьшее значениеtabindex
выше 0. Затем он будет циклически проходить через определенные элементы и только после того, как явные элементыtabindex
будут пропущены, вернется ли он в начало документа и выполнит порядок естественных вкладок.
В ЧАС TML4 spec только следующие элементы поддерживают атрибут tabindex: anchor , area , кнопка , вход , объект , выберите и textarea . Но спецификация HTML5 с учетом доступности позволяет назначать все элементы
tabindex
.-
Например
<ul tabindex="-1"> <li tabindex="1"></li> <li tabindex="2"></li> <li tabindex="3"></li> </ul>
является как
<ul tabindex="-1"> <li tabindex="1"></li> <li tabindex="1"></li> <li tabindex="1"></li> </ul>
, потому что независимо от того, что все они назначены
tabindex="1"
, они все равно будут следовать одному и тому же порядку, первый первый, а последний последний. Это тоже то же самое.<div> <a></a> <a></a> <a></a> </div>
, потому что вам не нужно явно определять tabIndex, если это поведение по умолчанию. A
div
по умолчанию не будет настраиваться, тегиanchor
будут.