Javascript AngularJS:如果只按enter键

Javascript AngularJS:如果只按enter键,javascript,angularjs,events,enter,Javascript,Angularjs,Events,Enter,我发现了一个示例,如果按下enter键,如何触发事件,但问题是,如果同时按下任何其他按钮,则会触发此事件。特别是,当Shift+Enter表示垂直扩展输入时,此问题与textarea有关 app.directive('ngEnter', function () { return function (scope, element, attrs) { element.bind("keydown keypress", function (event) {

我发现了一个示例,如果按下enter键,如何触发事件,但问题是,如果同时按下任何其他按钮,则会触发此事件。特别是,当
Shift+Enter
表示垂直扩展输入时,此问题与
textarea
有关

app.directive('ngEnter', function () {
    return function (scope, element, attrs) {
        element.bind("keydown keypress", function (event) {
            if(event.which === 13) {
                scope.$apply(function (){
                    scope.$eval(attrs.ngEnter);
                });

                event.preventDefault();
            }
        });
    };
});

所以问题实际上是如何捕捉事件,当只按下
Enter
键时?

您可以简单地添加另一项检查,即使用
event.shiftKey
是否按下
shift
,并相应地执行。差不多

if(event.which === 13 && !event.shiftKey) {
scope.$apply(function (){
                    scope.$eval(attrs.ngEnter);
                });
...
}
.bind()
已去除润滑脂,请改用。其次,在,
EpokK
中也包含了HTML标记,您是否包含了该标记?是否按了什么?;)