chrome 的事件监听断点(event listener breakpoints)能监听: alert 吗?

2020-06-24 07:49:06 +08:00
 shanlanlan

在页面 debug 调试的时候,经常被 alert 打断,有办法直接定位到这个 alert 吗?

例如:click 事件可以设置事件断点,那么 alert 方法可以断点吗?


虚心请教大佬。

2635 次点击
所在节点    JavaScript
6 条回复
Mutoo
2020-06-24 08:02:40 +08:00
alert 是全局函数,直接替换掉:

origAlert = alert;
alert = (...parmas) => {
debugger;
origAlert(...params)
}

然后断点后看 Call Stack 即可。
rioshikelong121
2020-06-24 08:12:59 +08:00
控制台 debug(window.alert) 试试
azcvcza
2020-06-24 09:51:43 +08:00
参照 js 高级程序设计的例子,可以给 Function prototype 绑 before 和 after,然后传入 window.alert,在 before 和 after 里调 debugger 吧
shanlanlan
2020-06-24 17:06:56 +08:00
@rioshikelong121 #2 原文:“控制台 debug(window.alert) 试试”
======
回复:亲测有效。
shanlanlan
2020-06-24 17:24:01 +08:00
@rioshikelong121 #2 原文:“控制台 debug(window.alert) 试试”
======
回复:感谢,已经成功解决了问题。定位到代码后,直接把网站的 if 判断改为了:if(true)了,调试通过。
rioshikelong121
2020-06-24 21:06:11 +08:00
@shanlanlan 嗯 没事可以看看 Chrome DevTools 的文档。 还是有很多新奇的功能。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/684314

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX