Ich arbeite an einer Web-App, und einer der wiederholten a
(Anker) -Elemente bekommt nicht den Tastaturfokus, wenn ich die Seite durchblättere. Nur wenn ich tabindex=0
hinzufüge kann ich es tab.Warum sollte ein `a` Tag` tabindex = 0` brauchen?
(Obwohl mein Ziel im Fokus sichtbar zu machen ist, ich bin zu bestimmen, ob ein Element, indem Sie einen Ausschnitt von jQuery konzentrieren wird:
// Whenever I hit tab, show me which element has focus
$('main').on('keydown',function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
console.log("focus is now on ", $(':focus'));
}
});
)
Das verwirrt mich. Nach , "Das Tabindex-Attribut kann auch jedes Element in interaktiven Inhalt machen" - aber a
ist eine der Listen, die sie standardmäßig als interaktiv auflisten.
Und wieder von einem Zugänglichkeit Artikel:
A [tabindex] Wert von 0 bedeutet, dass das Element in der Standardnavigations Reihenfolge platziert werden soll. Auf diese Weise können Elemente, die nicht nativ fokussierbarem (wie <div>, <Spannweite> und <p>) sind Tastaturfokus zu erhalten. Natürlich sollte man in der Regel verwenden, Links und Formular-Steuerelemente für alle interaktiven Elemente ... (http://webaim.org/techniques/keyboard/tabindex)
Was ein Ankerelement dazu führen würde, wie ich Reiter durch die interaktiven Elemente einer Seite zu überspringen?
Hat das a-Tag eine href? Wenn seine Interaktivität nur von Javascript kommt, könnte das erklären. – Katana314
Related: [Element aus Tab-Index entfernen] (http://stackoverflow.com/questions/5192859/html-remove-element-from-tab-index) – GolezTrol
Es kann eine Vielzahl von Gründen geben. Bitte zeigen Sie uns, welche Eigenschaften die '' Tags haben, die nicht tabbieren. –