8

我目前正在尝试制作一个 GreaseMonkey 脚本,该脚本将允许用户在键盘上按左键或右键,然后将其转到上一个漫画或下一个连环画。我目前有一些代码,但它没有给我任何结果。

function KeyCheck()
{
var KeyID = event.keyCode;
alert(KeyID);
}

document.onKeyDown = KeyCheck();

该代码仅用于调试以查看它是否实际执行,但是当我按下一个键时,页面上不会发生任何事情。我也在 Firefox 中进行测试。

4

2 回答 2

12

所以在谷歌搜索了 30 分钟后,我发现 GreaseMonkey 不支持开箱即用的 onkeydown。我不得不使用一个名为“addEventListener”的函数。我的最终代码正确返回了在网站上按下的键的 keyCode:

function KeyCheck(e)
{
alert(e.keyCode);
}

window.addEventListener('keydown', KeyCheck, true);
于 2010-01-24T23:36:59.640 回答
4

您不应该在 KeyCheck 之后使用 ()。您当前的代码运行 KeyCheck,然后尝试将 document.onKeyDown 设置为返回的值。如果您在没有 () 的情况下执行此操作,则应将名为 KeyCheck 的函数设置为在事件上运行。

另外,我认为 onKeyDown 应该全部小写 - 它是document.onkeydown

进一步的例子,使用内联函数:

document.onkeydown = function() { alert("key down") }

工作而

document.onkeydown = alert("key down");

没有。

于 2010-01-24T23:13:22.533 回答