Meistens ist dies eine Plausibilitätsprüfung. Der Schlüsselcode für beide Shift-Tasten ist 16. Bedeutet das, dass es tatsächlich unmöglich ist, ein linkes und rechtes Shift-Ereignis in einem Browser zu unterscheiden?Kann Javascript den Unterschied zwischen linker und rechter Umschalttaste erkennen?
Antwort
In neueren Browsern, die DOM3
unterstützen, können Sie event.location
verwenden, um den Standort zu überprüfen.
In the DOM3 spec gibt es 4 Konstanten für Ort definiert, DOM_KEY_LOCATION_STANDARD
, DOM_KEY_LOCATION_LEFT
, DOM_KEY_LOCATION_RIGHT
und DOM_KEY_LOCATION_NUMPAD
.
In diesem Fall können Sie tun:
if (event.location === KeyboardEvent.DOM_KEY_LOCATION_LEFT){
} else if (event.location === KeyboardEvent.DOM_KEY_LOCATION_RIGHT){
}
Internet Explorer ist in der Lage mit der Shiftleft Eigenschaft links und rechts Verschiebung zu unterscheiden:
Andernfalls werden sie nicht zu unterscheiden sind.
Es gibt einige Unterschiede. Überprüfen Sie das Beispiel auf Plunkr in dieser Frage: http://stackoverflow.com/questions/30218752/how-to-detect-shift-right-arrow-some-other-key-in-angular Derselbe Code funktioniert gut mit linke Schicht und funktioniert nicht mit Rechtsverschiebung – gandra404
Der einfachste Weg, es
$(document).ready(function(){
$("html").keydown(function(e) {
if (e.shiftKey) {
if (event.location == 1) console.log('left shift');
if (event.location == 2) console.log('right shift');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Hinweis zu tun: Sie haben die innen weiß Raum klicken, wenn Sie Code-Snippet ausführen, um die Tastatur zu aktivieren. Dies wird in Chrome und Safari getestet.
- 1. Erkennen STRG und UMSCHALTTASTE ohne Keydown-Ereignis?
- 2. Kann JavaScript den Unterschied zwischen dem Verlassen durch den Zurück-Button oder einem Link erkennen?
- 3. Was ist der Unterschied zwischen Dynamic Linker und Dynamic Loader?
- 4. Javascript-Unterschied zwischen zwei Wörtern
- 5. Javascript Inline-Display-Unterschied zwischen den Browsern?
- 6. Wie kann ich den Unterschied zwischen false und 0 feststellen?
- 7. Kann jemand den Unterschied zwischen Schließungs- und anonymen Funktionen erklären?
- 8. Kann jemand den Unterschied zwischen Ajax und Ruhe erklären?
- 9. Wie finde ich den Unterschied zwischen zwei Daten mit Javascript
- 10. Unterschied zwischen + = -1 und - = 1 in Javascript
- 11. Javascript Unterschied zwischen Uber und Prototyp
- 12. Unterschied zwischen Punktnotation und Klammernotation in Javascript
- 13. Unterschied zwischen: und = mit Javascript-Funktion
- 14. In JavaScript, was ist der Unterschied zwischen indexOf() und search()?
- 15. Unterschied zwischen getConnectionInfo() und getScanResults(), um Signalstärkeänderungen zu erkennen
- 16. JavaScript - Unterschied zwischen Bedingungen und if/else?
- 17. Javascript: Unterschied zwischen location.hostname und document.domain?
- 18. Unterschied zwischen einfachen und komplexen Aussage - Javascript
- 19. Unterschied zwischen Javascript Modularisierung und Abhängigkeit Injection
- 20. Unterschied zwischen dieser und selbst in JavaScript
- 21. Sitzungsende zwischen den Registerkarten erkennen
- 22. Unterschied zwischen den Ansichten und SELECT-Abfragen
- 23. Unterschied zwischen den Funktionstypen
- 24. Kann jemand den Unterschied zwischen GCM und Google Pub/Sub
- 25. Wie kann ich den Unterschied zwischen sc_buffer und sc_signal überprüfen?
- 26. Wie kann man den Unterschied zwischen class_eval() und instance_eval() verstehen?
- 27. Kann jemand diesen Linker-Unterschied zwischen g ++ 3.4.2 und g ++ 4.1.2 erklären?
- 28. Wie kann ich den Unterschied zwischen einem Iframe-Laden und dem Laden ganzer Seiten in einem UIWebView erkennen?
- 29. Unterschied zwischen document.referrer und window.parent.location.href
- 30. Den Unterschied zwischen Design- und Stilattributen verstehen
Kannst du mir den vollen Code zeigen? Ich habe nicht, wie man es ausführt –
Sie würden dies in einem Keyboard-Event-Handler im Browser haben, wo das erste Argument für die Event-Handler-Funktion ist "Ereignis". – loganfsmyth
Es ist in Ordnung. Ich habe es anders gemacht. http://stackoverflow.com/questions/40320597/detect-left-or-right-shift-key-in-keypress-jquery/40320730?noredirect=1 –