Heim >Web-Frontend >js-Tutorial >Verbesserung der Benutzerfreundlichkeit mit zusätzlichen Navigationsschlüssel
Bei der Behandlung von Tastaturereignissen in JavaScript halten sich die meisten Skripte und Anwendungen in der Regel an den grundlegenden Tastenbereich, die eine Kernzugriffsbetriebs bieten-die TAB-Schlüssel für die serielle Navigation, die Pfeiltasten für das Bohren oder für die zweidimensionale Navigation und für die zweidimensionale Navigation und Die Eingabetasten und Space -Tasten zum Klicken und Auswahl von Dingen.
Dies ist alles gut, aber es gibt auch einige andere gängige Schlüssel, die Sie möglicherweise in Betracht ziehen, die die Benutzerfreundlichkeit durch mehr Kontrolle erheblich verbessern können. Die Tasten von Page-Up- und Page-Down können zur schnellen Navigation über große Gruppen von verwendet werden Daten, während die Heim- und Endschlüssel als Verknüpfung zum ersten und letzten Wert verwendet werden.
Die meisten Windows -Tastaturen haben dedizierte Tasten dafür, arbeiten aber auch über Modifikator -Kombinationen auf dem Mac. In meinem MacBook gibt es beispielsweise eine zusätzliche FN (Funktion) Taste, die in Kombination mit den vier Pfeiltasten verwendet wird (z. B. Fn-up für Page-up und FN links für zu Hause).
Slider -Steuerelemente sind ein perfektes Beispiel dafür, wo diese Schlüssel zu einem guten Effekt verwendet werden können. Die Pfeiltasten werden normalerweise verwendet, um einen Schieberegler durch einen einzelnen Wert zu erhöhen und zu verringern. Wir können jedoch auch die Tasten mit den Seiten- und Page-Down-Tasten verwenden Der Schieberegler bis zum Minimum und Maximum.
Der folgende Code ist ein Auszug aus dem Such -Slider eines Video -Players:
<span>switch(true) </span><span>{ </span> <span>case (e.keyCode == 38 || e.keyCode == 39) : </span> <span>if(++value > max) </span> <span>{ </span> value <span>= max; </span> <span>} </span> <span>break; </span> <span>case (e.keyCode == 37 || e.keyCode == 40) : </span> <span>if(--value < 0) </span> <span>{ </span> value <span>= 0; </span> <span>} </span> <span>break; </span> <span>case (e.keyCode == 33) : </span> <span>if((value = value + Math.round(max / 10)) > max) </span> <span>{ </span> value <span>= max; </span> <span>} </span> <span>break; </span> <span>case (e.keyCode == 34) : </span> <span>if((value = value - Math.round(max / 10)) < 0) </span> <span>{ </span> value <span>= 0; </span> <span>} </span> <span>break; </span> <span>case (e.keyCode == 36) : </span> value <span>= 0; </span> <span>break; </span> <span>case (e.keyCode == 35) : </span> value <span>= (max - 1); </span> <span>break; </span><span>}</span>
Die Switch-Anweisung passt den Wert des Schiebereglers (und folglich die Suchposition des Videos) gemäß dem Ereignisschlüsselcode an-um einen einzelnen Schritt für die Pfeiltasten, um 10% für die Tasten von Seite-Up- und Page-Down-Tasten oder zu Der Beginn oder das Ende des Videos für die Heim- und Endschlüssel. Gegebenenfalls sind die Wertänderungen eingeschränkt, sodass sie ihre Grenzen nicht überschreiten (z. B. können Sie nicht über das Ende suchen).
In diesem Fall wurde der Schieberegler von Grund auf neu geschrieben, um diese zusätzlichen Schlüssel einzuschließen. Dies ist jedoch die Art Scripting-Verbesserung, die leicht nachzurotten, da alles, was es erfordert, zusätzliche Bedingungen für den Schlüsselhandlingscode benötigt, den das Skript bereits enthalten muss.
als Referenz, hier sind alle im vorherigen Beispiel verwendeten Ereignisschlüsselcode -Werte:
Umgang mit diesen Schlüsseln unterscheidet sich nicht als die Behandlung anderer Navigationsschlüssel. Wenn Sie weitere Informationen dazu wünschen, lesen Sie meinen früheren Artikel: Practical JavaScript Barrierefreiheit.
Das einzige, was ich hier ausdrücklich innehalten würde, ist, dass Navigationsschlüssel nur mit Schlüsseldown- und Schlüsselereignissen behandelt werden können und nicht mit TastePress -Ereignissen (die nur für Schlüssel verwendet werden, die tatsächlich a einfügen a Zeichen wie Buchstaben und Zahlen). Die Schlüsseldown -Ereignisse können auch verwendet werden, um Standardaktionen zu blockieren.
Interpretieren von Schlüsselverhaltenim Kontext Ihres Skripts bedeuten werden. Obwohl wir eine klare Vorstellung davon haben, was beispielsweise der Home-Schlüssel im Kontext eines Text-Editors oder Wortprozessors bedeutet, ist es in einem anderen Verhaltenskontext möglicherweise nicht ganz so offensichtlich.
Der Schieberegler ist ein gutes Beispiel, da es offensichtlich istZuhause bedeutet Minimum, Start oder erste
Sie werden die beste Vorstellung davon haben, wie solche Schlüssel zu Ihrer eigenen Anwendung in Beziehung stehen. Es gibt keine harten und schnellen Regeln dafür und keine absoluten Konventionen. Es ist nur ein Fall, über das vorhanden ist, was vorhandene Tastaturaktionen erzielen und wie diese zusätzlichen Tastenanschläge verwendet werden könnten, um dies zu erleichtern oder schneller zu machen.
Wie kann ich zusätzliche Navigationschlüssel auf meiner Website implementieren? Auf Ihrer Website beinhaltet eine Kombination aus Webdesign und Codierung. Sie können HTML, CSS und JavaScript verwenden, um die Navigationsschlüssel zu erstellen und zu stylen. Es ist auch wichtig sicherzustellen Navigationstasten können Funktionen wie "Back to Top" -tasten, "zu Inhaltslinks überspringen" und Tastaturverknüpfungen enthalten. Diese Funktionen können den Benutzern helfen, Ihre Website effizienter zu navigieren, insbesondere auf langen oder komplexen Seiten. Alternative Möglichkeiten zur Navigation durch die Website. Beispielsweise können Tastaturverknüpfungen für Benutzer mit Mobilitätsstörungen, die möglicherweise Schwierigkeiten haben, eine Maus zu verwenden, besonders nützlich sein. In ähnlicher Weise können Benutzer -Links "zu Inhalten" -Links mit Bildschirmlesern helfen, Navigationsmenüs und andere sich wiederholende Inhalte zu umgehen.
Das obige ist der detaillierte Inhalt vonVerbesserung der Benutzerfreundlichkeit mit zusätzlichen Navigationsschlüssel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!