我打算无情地重新考虑我的很多前端代码。代码已经被添加,功能已被完全重写,我知道我已经设置了很多事件来监听不存在的元素。
有没有办法找到将jQuery事件附加到不存在的元素的代码?希望在没有手动完成所有代码的情况下找到不再使用的事件。
答案 0 :(得分:4)
可能的调试步骤是使用调试版本覆盖on
方法,如下所示。它将列出元素集为空的事件注册尝试以及用于查找代码的跟踪。
(function(){
var old = $.fn.each;
$.fn.each = function(){
if(this.length == 0){
console.debug('non-selector', this.selector)
console.trace()
}
return old.apply(this, arguments);
}
})();
演示:Fiddle