40 Stimmen

AngularJS ng-keydown-Direktive funktioniert nur im <input>-Kontext?

Ich bin ziemlich neu in AngularJS, habe es bisher aber ganz gut gefunden. Für mein aktuelles Projekt benötige ich eine Hotkey-Funktionalität und war froh zu sehen, dass sie seit der Version 1.1.2 unterstützt wird.

Die ng-keydown-Direktive (http://code.angularjs.org/1.1.3/docs/api/ng.directive:ngKeydown) funktioniert wie erwartet für Eingabetypen, versagt jedoch in anderen Kontexten wie z.B. div etc., was seltsam ist, da die Dokumentation etwas anderes sagt.

Hier ist ein minimales Beispiel (http://jsfiddle.net/TdXWW/12/) für das funktionierende bzw. nicht funktionierende Verhalten:

HINWEIS: Ich weiß, dass dies mit plain jQuery gelöst werden könnte (http://www.mkyong.com/jquery/how-to-check-if-an-enter-key-is-pressed-with-jquery/), aber ich bevorzuge es, zu verstehen, wie man es in AngularJS behandelt.

0voto

Andrey Punkte 1374

Es hat für mich gut funktioniert, fügen Sie einfach das Tabindex-Attribut hinzu. Stellen Sie sicher, dass ng-keydown den richtigen AngularJS-Ausdruck enthält

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X