Javascript 如何在ChromeDevTools中查看在元素上激发的事件?
我在库中的页面上有一个可自定义的表单元素。我希望看到在与javascript交互时触发了哪些javascript事件,因为我试图找出要使用的事件处理程序 如何使用Chrome Web Developer做到这一点?Javascript 如何在ChromeDevTools中查看在元素上激发的事件?,javascript,google-chrome-devtools,Javascript,Google Chrome Devtools,我在库中的页面上有一个可自定义的表单元素。我希望看到在与javascript交互时触发了哪些javascript事件,因为我试图找出要使用的事件处理程序 如何使用Chrome Web Developer做到这一点? 点击F12打开开发工具 单击“源”选项卡 在右侧,向下滚动到“事件侦听器断点”,并展开树 单击要侦听的事件 与目标元素交互,如果它们触发,您将在调试器中获得断点 类似地,您可以右键单击目标元素->选择dev框架右侧的“inspect element”向下滚动,底部是“event l
- 点击F12打开开发工具
- 单击“源”选项卡
- 在右侧,向下滚动到“事件侦听器断点”,并展开树
- 单击要侦听的事件李>
- 与目标元素交互,如果它们触发,您将在调试器中获得断点
类似地,您可以右键单击目标元素->选择dev框架右侧的“inspect element”向下滚动,底部是“event listeners”。展开树以查看附加到元素的事件。不确定这是否适用于通过冒泡处理的事件(我猜不是)这不会显示自定义事件,例如如果是jquery插件,脚本可能创建的事件。例如:
jQuery(function($){
var ThingName="Something";
$("body a").live('click', function(Event){
var $this = $(Event.target);
$this.trigger(ThingName + ":custom-event-one");
});
$.on(ThingName + ":custom-event-one", function(Event){
console.log(ThingName, "Fired Custom Event: 1", Event);
})
});
chrome developer tools中脚本下的事件面板不会显示“某物:自定义事件一”您可以使用该函数
只需检查元素(鼠标右键单击
→ <代码>在可见元素上检查,或转到Chrome Developer Tools中的元素
选项卡并选择所需元素),然后转到控制台
选项卡并写入:
monitorEvents($0)
现在,当您将鼠标移到该元素上,聚焦或单击它时,将显示激发事件的名称及其数据
要停止获取此数据,只需将其写入控制台:
unmonitorEvents($0)
只是Chrome开发者工具选择的最后一个DOM元素。您可以在那里传递任何其他DOM对象(例如getElementById
或querySelector
的结果)
您还可以指定事件“类型”作为第二个参数,以将监视的事件缩小到某个预定义的集合。例如:
monitorEvents(document.body, 'mouse')
此可用类型的列表为
我制作了一个小gif,演示了此功能的工作原理:
是一个很好的小书签,可以用来查看元素的事件处理程序。在线演示可以查看。对于jQuery(至少是1.11.2版),以下过程对我很有用
$。\u数据($0),“事件”)代码>在“控制台”中
处理程序:
值这个bookmarklet很有用:这里的答案很有价值,但上面的bookmarklet^实际上解决了我的问题。如果是鼠标事件,那么这个解决方案就是一个问题,因为断点会终止流程。如果所有事件都指向我不关心的缩小的jquery,那么我如何到达使用该jquery的函数。它能显示我创建的自定义事件吗?当我读到它改变了我的生活时,这是我想到的第一件事。我错过了什么吗?@MuhammadUmer你可以黑盒jQuery,这样Chrome就可以跳过它直接进入你的源代码。我检查了事件监听器的框架监听器,但仍然没有看到主干的事件监听器。有什么想法吗?同意。这是监视和跟踪特定元素事件的实际方法。这仍然有效吗?当我键入此命令时,控制台中显示“undefined”,并且似乎没有发生任何监视。啊,是的,我明白了。正是“未定义”让我感到厌烦,但我现在看到你的动画GIF中也有同样的内容。谢谢。@MariuszPawelski接下来怎么办?我这样做了,发现了我感兴趣的点击事件。但是当我点击元素时,我如何找到发生了什么?执行什么样的代码?我应该搜索
MouseEvent
的哪个属性?但是在哪里可以找到处理程序,例如单击处理程序。那么,如何找到这些事件呢?在Chrome中,这些事件可以找到您