【发布时间】:2014-10-21 13:49:27
【问题描述】:
我有一个非常复杂的网站,我知道某处有一个带有描述的alert()。有没有办法在alert() 调用上设置断点? HTML 已生成,所以我不能只 grep 获取消息。
【问题讨论】:
标签: javascript debugging firebug
我有一个非常复杂的网站,我知道某处有一个带有描述的alert()。有没有办法在alert() 调用上设置断点? HTML 已生成,所以我不能只 grep 获取消息。
【问题讨论】:
标签: javascript debugging firebug
可以使用控制台替换alert函数:
window.alert = function() { debugger; };
【讨论】:
Firebug 的 Script 面板允许您在所有 JavaScript 源代码中搜索代码。
因此您可以简单地搜索alert( 或搜索警报框显示的消息并在调用它的行设置断点。
另一种方法是使用 Break On Next button ( ) 在下一个执行的 JavaScript 语句处停止。因此,请单击按钮,然后执行导致警报框移位的操作。
注意:这仅适用于在显示警报框的事件之前没有调用其他事件处理程序的情况。
【讨论】:
alert() 中搜索文本。此外,您可以尝试@SLaks 的技巧。但是,如果您没有缩小代码的源代码,则通常是第三方代码,您应该为其维护者提交错误报告,而不是尝试自己调试。
eval()ed 通过字符串连接,或其他。你错过了重点。关键是挂钩库函数是一个广泛有用的调试功能,它应该很容易。挖掘任意数量的陌生代码并不容易。
alert() 的更好方法,请随时写下答案。