Javascript 因中断而失去焦点
我有一些代码捕获keydown并查找Alt-D:Javascript 因中断而失去焦点,javascript,jquery-ui,Javascript,Jquery Ui,我有一些代码捕获keydown并查找Alt-D: $(document).keydown(function(e) { if((e.keyCode == 68) && e.altKey){ // Alt-D e.preventDefault(); - code to duplicate an element - } }); 这在第一次使用时效果很好,但是在使用了我的“复制元素的代码”之后,下一个Alt-D没有被捕获。
$(document).keydown(function(e) {
if((e.keyCode == 68) && e.altKey){ // Alt-D
e.preventDefault();
- code to duplicate an element -
}
});
这在第一次使用时效果很好,但是在使用了我的“复制元素的代码”之后,下一个Alt-D没有被捕获。事实上,没有中断被捕获,直到我在身体上点击后退。似乎“复制元素的代码”会将中断定向到其他窗口
有人能建议我必须在我的重复代码中做什么才能发生这种情况吗?我已经尝试将focus()应用于由重复代码创建的元素,但是没有看到我的中断。我必须在窗口中单击才能将它们取回。(这里包含的重复代码非常混乱。)
谢谢你的建议 .preventdefault()
返回false
我相信这两个都是跨浏览器兼容性所必需的
您正在创建元素。在元素实际创建之前设置焦点
alt键本身。将焦点从文档中移到工具栏上。
尝试为alt和D键创建一个数组或全局变量,用于keydown
因此发生了两个实际的“按键”事件。每个事件都可以使用event.preventdefault();返回false;所以alt被阻止了。和D键被阻止
目前,仅阻止猜测D键。而不是“alt键”((先按住D键,然后按alt。而alt先按下,然后按D键))alt D会聚焦地址栏,默认操作是否仍在发生?否。如果我键入,字符不会进入地址栏。我看不到它们出现在任何地方。中断总是让我失去焦点。是的,Alt键本身会打开Firefox顶部的文件/视图/编辑菜单。窃取焦点的是Firebug调试器中断。清除这些选项可以将焦点保留在我的窗口中,我不必再次单击此处来查看新事件。谢谢你的意见。这有帮助。