gpt4 book ai didi

javascript - Angular Directive(指令) : bind keydown to anchor element

转载 作者:行者123 更新时间:2023-11-27 23:40:44 25 4
gpt4 key购买 nike

我有以下指令:

.directive('hasFocus',function(){
return{
restrict: 'A',
link : function(scope,element,attrs){
element.on('keydown',function(e){
switch(e.which){
case 38 :
e.preventDefault();
selectNextButton($(this),true);
break;
case 40 :
e.preventDefault();
selectNextButton($(this));
break;
}
});
}
}
});
<小时/>

当我将其附加到按钮时,这可以正常工作,但当我附加到 anchor 时,这不起作用。

<button id="mybutton" has-focus>the button</button>


<a id="mybutton" data-ng-click="doSomething()" has-focus>the anchor</a>
<小时/>

我希望能够在用户使用方向箭头导航时捕获 e.which

是否无法将 keydown 事件绑定(bind)到 anchor ?

<小时/>

https://api.jquery.com/keydown/声明它可以:

当用户第一次按下键盘上的某个键时,keydown 事件会发送到某个元素。它可以附加到任何元素,但该事件只会发送到具有焦点的元素."

最佳答案

不存在href属性时,似乎无法为anchor标签点击设置焦点在你的 anchor 中。这是一个answer在 stackoverflow 上,它由能够接收焦点的 DOM 元素 列表组成。您可以做的是将 href 属性添加到 anchor 中,它应该根据您的期望工作。 Fiddle

关于javascript - Angular Directive(指令) : bind keydown to anchor element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33679922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com