1

我正在为复杂的网络应用程序编写用户脚本。现有代码正在捕获“j”和“k”keydown事件。

我希望能够找到这个函数来看看它在做什么。有没有办法列出文档中的所有关键事件处理程序?或者,当我按下字母时,也许可以在 Chrome 开发者工具中以某种方式设置断点?

4

2 回答 2

6

是的,在开发人员工具中,转到Scripts选项卡,选择页面,转到Event Listener BreakpointsKeyboardkeydown

在此处输入图像描述

虽然这可能不一定对您有很大帮助,例如,如果脚本被缩小或者他们使用库。但是你可以试一试。

于 2011-07-12T16:41:54.437 回答
1

如果您可以先运行一段脚本,并且在文档级别处理键,则可以安装此拦截器以查看代码的哪一部分正在设置键盘处理程序:

var oldListener = document.addEventListener;
document.addEventListener = function(type, listener, capture) {
    if (type == "keydown" || type == "keyup" || type == "keypress") {
        console.log("type=" + type + " listener=" + listener.toString().slice(0, 80));
    }
    return (oldListener.apply(this, arguments));
}
于 2011-07-12T17:02:24.977 回答