Ich habe Schaltflächen, die div-Elemente sind, und ich möchte sie so gestalten, dass der Benutzer die Tabulatortaste auf seiner Tastatur drücken und zwischen ihnen wechseln kann. Ich habe versucht, ihren Text in Ankertags zu verpacken, aber es scheint nicht zu funktionieren.
Hat jemand eine Lösung?
href
Attribut hat, sollte es funktionieren. Es kann eine angemessene Verwendung des Markups sein oder nicht, es sei denn, das aktivierbare Element tut tatsächlich etwas.Antworten:
Fügen Sie
tabindex
Ihrendiv
Elementen Attribute hinzu .Beispiel:
Wenn Sie laut Steveax-Kommentar nicht möchten, dass die Tabulatorreihenfolge von der Position des Elements auf der Seite abweicht, setzen Sie Folgendes
tabindex
auf0
:quelle
tabindex=0
, um nicht mit der natürlichen Tabbing-Reihenfolge zu versauen.Für Interessenten können Sie zusätzlich zu der akzeptierten Antwort die folgende Abfrage hinzufügen, um den div-Stil zu ändern, wenn Sie darauf tippen, und auch Enter und Space verwenden, um einen Klick auszulösen (dann erledigt Ihr Klick-Handler den Rest).
Ich bin sicher, jemand hat dies zu einem JQ-Plugin $ () gemacht. MakeTabStop
quelle
Fügen Sie das
tabindex="0"
Attribut jedem Div hinzu, das Sie tabbable möchten. Verwenden Sie dann CSS-Pseudoklassen: hover und: focus, um dem App-Benutzer beispielsweise anzuzeigen, dass das div fokussiert und anklickbar ist. Verwenden Sie JavaScript, um den Klick zu verarbeiten.quelle
Machen Sie Elemente mit jquery per Tastendruck tabellierbar und klickbar
Annahmen
Beispiel HTML:
JQuery-Code: Dies ist der Code, der ausgeführt wird, wenn die Seite geladen wurde. Es muss auf Ihrer HTML-Seite ausgeführt werden.
Ein funktionierendes Beispiel finden Sie hier .
quelle