找出点击时触发的javascript函数...

时间:2012-06-19 09:07:36

标签: javascript javascript-events

有没有办法通过点击某个按钮来找出触发了哪个javascript函数?

让我解释一下...... 我有一个带有大型js脚本的网页(不是由我制作的),我要检测哪个功能是由特定按钮触发的,我需要找到这个btn触发的功能。

4 个答案:

答案 0 :(得分:21)

使用Chrome的网络检查器检查元素并查看事件监听器面板。

Web Inspector Example

如果附加事件的代码在库中(例如,在我的示例中通过Zepto),则在行上设置断点并检查调用堆栈以查看它在代码中的起源。

Call stack example

如您所见,该事件源自我的代码,现在我知道文件名和行号。

答案 1 :(得分:2)

在您的功能中,您可以让arguments.callee了解它。请注意,这是deprecated,但应该告诉您要查找的内容。

alert(arguments.callee);

答案 2 :(得分:0)

为什么不使用Stack Trace for JavaScript,即stacktrace.js

转到上面的链接,点击 Bookmarklet 并在您要检查的任何网站上加载js文件。

答案 3 :(得分:0)

在Google Chrome浏览器中,打开您感兴趣的网页。

右键单击要检查的元素(即按钮)。在出现的“上下文菜单”中,单击“检查”。将会出现“开发人员工具”窗口。

  1. 点击“元素”标签。
  2. 单击要检查的HTML元素(如果尚未选中)。
  3. 单击“事件监听器”选项卡。将显示完整的听众列表。
  4. 选择您感兴趣的事件侦听器,即“单击”。将会显示一个调用堆栈。
  5. 单击调用堆栈中的最后一项。最终,这会将您重定向到事件触发时执行的实际功能。

Google chrome - Inspect option

Google chrome - Developer tools window