Могу ли я динамически установить tabindex в JavaScript?
Есть ли какой-либо атрибут, например tab-index?
КОНТЕКСТ. Я делаю раздел в виде веб-формы видимым или невидимым в зависимости от какого-либо условия, когда я хочу установить индекс вкладки вручную, когда этот конкретный раздел будет видимым.
Ответ 1
document.getElementById("link3").tabIndex = 6;
Ответ 2
Используя JQuery, мы можем динамически настраивать индекс вкладки
Попробуйте этот код - установите tabindex и увеличьте переменную
$(function() {
var tabindex = 1;
$('input,select').each(function() {
if (this.type != "hidden") {
var $input = $(this);
$input.attr("tabindex", tabindex);
tabindex++;
}
});
});
Ответ 3
Динамически создавать и reset tabIndex элементов HTML.
Атрибут tabindex определяет порядок вкладок элемента HTML, например набор "li", "a" e.t.c. Атрибут tabindex поддерживается во всех основных браузерах.
В этом случае задайте tabindex для элементов списка "li". Обычно tabindex начинается с "0", однако мы можем reset его начать с "1". Я использую JQuery для этого.
<ul id="dfruits">
<li>Apple</li>
<li>Dragonfruit</li>
<li>Damson</li>
<li>Cloudberry</li>
<li>Blueberry</li>
<li>Cherry</li>
<li>Blackcurrant</li>
<li>Coconut</li>
<li>Avocado</li>
<li>Pinaple</li>
</ul>
$(document).ready(function() {
var
SomeFruitsList=$("ul#dfruits li"),
//set tab index to starts from 1
tabindex = 0;
SomeFruitsList.each(function() {
// add tab index number to each list items
tabindex++;
$(this).attr("tabindex","TabIndex " +tabindex);
var tabIndex = $(this).attr("tabindex");
// add tab index number to each list items as their title
$(this).attr("title",tabIndex);
$(this).append('<br/><em>My tabIndex is number: '+tabIndex+'<em>')
})
});