Chrome Devtool无法为您做到这一点。但随着API铬让你可以检查那些在您的控制台:getEventListeners
只是把这个代码在你的开发工具的控制台,你可以在你的页面中的所有绑定点击事件数:
Array.from(document.querySelectorAll('*'))
.reduce(function(pre, dom){
var clks = getEventListeners(dom).click;
pre += clks ? clks.length || 0 : 0;
return pre
}, 0)
结果是这样的:
3249
那是一个很大的点击绑定。绝对不是绩效项目的好例子。
如果你想看到什么事件都在你的页面中所有的元素和多少每个事件的监听器的绑定,只要把这些代码在你的开发工具的控制台:
Array.from(document.querySelectorAll('*'))
.reduce(function(pre, dom){
var evtObj = getEventListeners(dom)
Object.keys(evtObj).forEach(function (evt) {
if (typeof pre[evt] === 'undefined') {
pre[evt] = 0
}
pre[evt] += evtObj[evt].length
})
return pre
}, {})
结果是这样的:
{
touchstart: 6,
error: 2,
click: 3249,
longpress: 2997,
tap: 2997,
touchmove: 4,
touchend: 4,
touchcancel: 4,
load: 1
}
还有很多其他信息,你可以从这个API获得。只是即兴而已。
你不能使用源代码面板:https://developer.chrome.com/devtools/docs/javascript-debugging? – arnolds 2015-02-06 13:28:40
[VisualEvent](https://github.com/DataTables/VisualEvent) - _Visual Event是一个Javascript小书签,提供有关已附加到DOM元素的事件的调试信息。 Visual Event显示:哪些元素具有附加的事件,附加到元素的事件类型,将触发事件的代码,附加函数定义位置的源文件和行号(Webkit浏览器和歌剧)_ – Andreas 2015-02-06 13:43:58
感谢您的建议和意见。我已经尝试过了。看起来它只抓取DOM级别0和1类型的事件,而不是事件侦听器。 – 2015-02-06 13:47:52