我有一个使用 ext-js 库构建的系统。系统的一部分列出了流经在线商店的订单。单击一行时,会显示其他订单详细信息。几天前,单击某行后立即出现一条消息“FIXME:已创建 panelID...”。之后,继续正常运行,即错误消息很烦人,出现后不会中断正常执行。
我正在尝试调试JS代码,看看错误信息是在什么情况下出现的,即为什么突然开始出现。我正在尝试使用 FireBug 来做到这一点。有没有人有任何提示我可以用来实现建立哪一行代码触发 alert() 的目标? 非常感谢任何关于此事的意见。
最佳答案
Firebug 有一个命令行 API 可以以编程方式创建断点。例如:
debug(fn);
为函数 fn
创建一个断点。不幸的是,这不能用于具有 native 代码的函数(内置函数,如 alert
)。但是,您可以使用这个技巧。
使用此脚本在您的代码中插入一个脚本 block -
window.alert_ = window.alert;
window.alert = function() {
alert_.apply(window,arguments)
};
您所做的是用您自己的 window.alert 重新定义它做同样的事情。
现在在 firebug 中附加断点:
debug(alert);
现在,下次脚本调用 alert 时,您将在函数中设置一个断点。然后,您可以分析堆栈跟踪并找出调用它的位置。
关于javascript - 调试触发 alert() 的 JS 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3638249/