1

我似乎无法使用该onkeyup事件来检测何时可靠地释放修饰键,特别是 Alt 键。有时有效,有时无效。不过,大多数时候它不会。

我目前的代码是:

document.documentElement.onkeyup = function(e) {
    e = e || window.event;
    if( !e.altKey) {
        // do stuff here
        document.documentElement.onkeyup = null;
    }
}

可能与阻止默认事件操作不起作用...?当我在 IE9 中工作时,会弹出“文件”菜单。不过,在尝试触发事件之前,我确实关闭了菜单。

4

2 回答 2

2

不能直接回答您的问题,但这可能会对您有所帮助。这是关于浏览器如何管理 keydown/press/up 的非常详细的描述。

于 2011-10-29T20:31:16.087 回答
0

我相信通常浏览器的关键事件优先于页面定义的事件。但是,我建议使用jQuery,因为我只是在 IE9 中进行测试,他们似乎已经克服了这个问题。

编辑:虽然这似乎捕获了事件,但我认为不可能阻止 IE 执行它自己的事件。

于 2011-10-29T20:28:17.330 回答