Подтвердить что ты не робот

Можете ли вы перечислить все переключатели?

У меня есть список переключателей. когда я просматриваю их, кажется, что только первый переключатель или тот, который выбран, будет сфокусирован, остальные переключатели будут пропущены. checkbox did not есть эта проблема.

http://jsfiddle.net/2Bd32/

Мне сложно объяснить мой QA, это не ошибка. может кто-то, пожалуйста, объясните мне, почему это происходит.

Soccer: <input type="checkbox" name="sports" value="soccer"  tabindex="1" /><br />
Football: <input type="checkbox" name="sports" value="football"  tabindex="2" /><br /> 

<input type="radio" name="num" value="3" tabindex="3">3<br>
<input type="radio" name="num" value="4" tabindex="4">4<br>
<input type="radio" name="num" value="5" tabindex="5">5<br>
<input type="radio" name="num" value="6" tabindex="6">6<br>
<input type="radio" name="num" value="7" tabindex="7">7<br>

Baseball: <input type="checkbox" name="sports" value="baseball"  tabindex="8"  /><br /> 
Basketball: <input type="checkbox" name="sports" value="basketball"  tabindex="9"  />
4b9b3361

Ответ 1

Вы можете сослаться на W3C в качестве источника, здесь и здесь.

По сути, радиокнопка - это группа, которая функционирует как отдельный элемент, поскольку она сохраняет только одно значение. Вкладка в радиогруппу приведет вас к первому элементу, а затем с помощью клавиш со стрелками, которые вы перемещаетесь внутри группы.

  • Фокус может перейти к радиогруппе через:
    • Клавиша Tab
    • Ключ доступа или мнемоническое нацеливание на метку
    • Активация метки (через механизм вспомогательных технологий)
  • Клавиша Tab перемещает фокус между группами переключателей и другими виджетами.
  • Когда фокус находится на группе и когда не выбрана ни одна радиокнопка:
    • Нажатие клавиши табуляции перемещает фокус на первую радио-кнопку в группе, но не выбирает радио-кнопку.
    • Shift + нажатие клавиши Tab перемещает фокус на последнюю радио-кнопку в группе, но не выбирает радио-кнопку.
  • Когда фокус перемещается на группу, в которой выбран переключатель, нажатие клавиш Tab и Shift + Tab перемещает фокус на выбранный переключатель.
  • Клавиши "Стрелка вверх" и "Стрелка вниз" перемещают фокус и выбор.
    • Нажатие клавиши со стрелкой вверх перемещает фокус и выбор вперед с помощью переключателей в группе. Если первая радиокнопка имеет фокус, то фокус и выбор перемещаются к последней радиокнопке в группе.
    • Нажатие клавиши со стрелкой вниз перемещает фокус и выделение назад с помощью переключателей в группе. Если последний переключатель имеет фокус, то фокус и выбор перемещаются на первый переключатель в группе. * Нажатие клавиши пробела проверяет переключатель, который в данный момент имеет фокус.
  • При повторном входе в группу фокус возвращается к точке предыдущего фокуса (элемент с установленным выбором).
  • Нажатие клавиши Tab выходит из группы и перемещает фокус на следующий элемент управления формы.
  • Нажатие клавиш Shift + Tab выходит из группы и перемещает фокус на предыдущий элемент управления формы.

Ответ 2

Радиокнопки с одним именем похожи на один элемент управления (например, ввод или выбор), вы можете изменить его с помощью клавиш со стрелками, клавиша табуляции перемещает фокус на другой элемент управления.

Ответ 3

Если вы используете angularjs, вы можете напрямую управлять радиокнопкой с помощью ng-model, используя те же ng-model и удаляя name.

<input type="radio" value="0" ng-model="status">
<input type="radio" value="1" ng-model="status">

Теперь еще одно преимущество перед нажатием клавиши табуляции заключается в том, что вы можете сначала сфокусироваться на переключателе без его фактического выбора. Затем вы можете выбрать, нажав space.

Ответ 4

Если вы используете Angular Material для своего приложения, вы можете включить переключение между радиокнопками, совместимое с браузером, добавив tabindex к каждому <mat-radio-button>:

<mat-radio-button [tabindex]="0">

В противном случае вы не сможете переключаться между переключателями в Safari (потому что это поведение браузера по умолчанию - нажмите здесь для одного обсуждения).