我知道有一些手动方式,我有谷歌搜索,但没有找到自动方式。
我有一些相当复杂的代码,其中一个元素可以通过几种不同的方式由jQuery changed
,在执行整个代码期间的不同时间由于不同的原因,取决于各种各样的事情。
我正在尝试找到一个问题,因为它发生了错误的更改,并且无法确切地确定哪个change()
事件正在发生变化。
无论如何,我可以暂时添加以下内容:
$(document).on('change', '.myClass', function (e){
console.log(e.functionOrLineWhichTriggerThis);
});
用于调试/故障查找目的?
答案 0 :(得分:0)
您可以在每个要跟踪的函数内部定义变量,然后您可以在触发时使函数设置变量。然后你可以在浏览器的控制台中检查变量的值,并找出使用的函数。
答案 1 :(得分:0)
您可以尝试创建错误并打印其堆栈跟踪的旧技巧:
$(document).on('change', '.myClass', function (e){
var error = new Error();
console.log(error.stack);
});
stack属性不是标准的,但主要浏览器似乎支持。您可以在此处获得有关它的更多信息:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/Stack