Angular js 指令在按任何元素上的回车键时触发"click"事件



我需要使用回车键和指令来触发click事件。我需要它成为一个指令,因为我想重复使用它。

例如:一个绑定了一些onclick事件的div,我将使用tabindex="0";和键盘输入keydown来触发点击事件。

这可能吗?我已经尝试了下面的指令代码,但它不起作用。

(function () {
'use strict';
angular
.module('app.directives')
.directive('enterKeyInput', enterKeyInput);
enterKeyInput.$inject = [];
/* @ngInject */
function enterKeyInput() {
var directive = {
restrict: 'AC',
link: function (scope, element, attrs) {
element.bind("keydown keypress", function (event) {
if (event.keyCode === 13) {
element.click();
}
});
}
};
return directive;
}

})((;

自己找到了答案:D

(函数(({"严格使用";

angular
.module('app.directives')
.directive('enterKeyInput', enterKeyInput);
enterKeyInput.$inject = [];
/* @ngInject */
function enterKeyInput() {
return {
restrict: 'AC',
link: function (scope, element, attrs) {
element.bind('keyup', function (e)  {
if ([13].indexOf(e.which) !== -1)  {
e.preventDefault();
e.stopPropagation();
element.click();
}
});
}
};
}

})((;

最新更新