fand ich diese ausgezeichnete Frage über die Pfeiltasten, mit jQuery Bindung: Binding arrow keys in JS/jQuery mit einer großen Lösung von Sygmoral:Binding Pfeiltasten in jQuery außer in Ein- und TextArea-
$(document).keydown(function(e) {
switch(e.which) {
case 37: // left
break;
case 38: // up
break;
case 39: // right
break;
case 40: // down
break;
default: return; // exit this handler for other keys
}
e.preventDefault(); // prevent the default action (scroll/move caret)
});
AUSSER: Diese mit den Pfeiltasten verhindert von der Art zu arbeiten, wie sie normalerweise funktionieren würden, wenn der Fokus in einem Texteingabefeld liegt.
Wie würde ich diese Lösung ändern, damit die Pfeiltasten normal funktionieren, wenn der aktuelle Fokus in einem Eingabe-, Textbereich oder einem anderen bearbeitbaren Bereich liegt?
Nur zu überprüfen - '.is (': input')' umfasst auch Textareas? –
Absolut! ': input' umfasst alle Eingabeelemente wie TextArea, Select, Button etc. – Jai
Ich denke, der Test könnte einfacher sein:' if (! $ (e.currentTarget) .is (': input, [contenteditable]')) { 'weil' .is() 'einen Selektor nimmt, der' OR'-Bedingungen durch Komma getrennt haben kann. Richtig? –