gpt4 book ai didi

Javascript:按键事件未触发

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:42:51 24 4
gpt4 key购买 nike

我正在使用以下代码编写用户脚本:

(function() {
'use strict';
window.addEventListener("keydown", arrows, false);
function arrows(e) {
debugger;
switch(e.keycode) {
case 37: alert("Left"); break;
case 39: alert("Right"); break;
}
}
})();

最终,左侧和右侧案例将分别导航到系列中的上一篇和下一篇文章,内容如下:

window.location = String(parseInt(window.location.href.match(/\d+$/))-1);

但是,按箭头键不会引起警报。脚本显然已加载,Chrome 开发人员菜单显示 arrows() 函数已注册为 window.keydown 的事件监听器,但该函数从未触发。我将 debugger; 添加到 arrows() 函数,但是当我按下箭头键时调试器没有显示。

最佳答案

event propagation在它冒泡到 window 之前,可能会在某个元素的处理程序上停止(可能是由于编写不当的 onkeydown 返回 false 以防止默认操作,不关心这也会停止传播)。

您应该为您的监听器附加捕获,以便它在 window 处捕获事件,它冒泡之前:

// note the third parameter
window.addEventListener("keydown", arrows, true);

关于Javascript:按键事件未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37661820/

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