Tabindex 0 на фокусируемом элементе (кнопка) - PullRequest
0 голосов
/ 22 января 2019

Я несколько раз замечал следующую схему в кодовой базе, над которой я сейчас работаю:

<button tabindex="0">A button</button>
<ul tabindex="-1">...

Конечно, tabindex="-1" на ul мешает фокусировке, но что этоточка установки tabindex=0 на кнопку?Разве этот элемент уже не может быть сфокусирован по умолчанию?

Ответы [ 2 ]

0 голосов
/ 27 января 2019

Просто подробнее об использовании tabindex и что это означает в этом контексте:

Tabindex = "0" означает: Фокусируется с помощью клавиши табуляции и из скрипта (используя element.focus()) и вставляется в естественный табордер (он же порядок, логически следующий за DOM). Так как это стандартное поведение кнопок, вы можете выбросить <button tabindex="0"> как ерунду и вздор.

Tabindex больше 0 назначает пользовательский табордер. Таким образом, если вы скажете <button tabindex="1">, кнопка всегда будет фокусироваться первой при использовании табуляции, независимо от DOM-структуры. Этот метод не рекомендуется.

Tabindex = "- 1" говорит, что вы не можете сфокусировать его, используя вкладку, но функция JavaScript element.focus() будет работать. На ul это имеет смысл, только если вы хотите сфокусировать его на скрипте в какой-то момент. Кроме того, это также код вздор, а также назначает непреднамеренную роль.

0 голосов
/ 22 января 2019

Оба варианта использования tabindex излишни.

...