chrome给jquery打断点,给ajax生成标签绑定tap事件,方法执行完后,进入VM15142页面又执行了方法?

发布于 2022-09-01 12:08:54 字数 486 浏览 8 评论 0

把绑定的事件延时3秒执行,是一个折叠框显示隐藏,走完之后进入一个VM15142页面
图片描述
然后又执行了这个方法,由于是得到属性后判断隐藏显示,所以这个导致功能无法实现,不知道
这个VM15142是哪来的
图片描述

跳出方法后通过堆键看,在jquery上瞎走呢,然后又进vm18256,之后又是jquery,不知是什么问题
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

昔梦 2022-09-08 12:08:54

题主的算法实现可能有些问题。

看错,以为是 setInterval 划掉重写
~~题主的代码做了这样一件事情: 每隔3秒给 .chapter_title 这个元素监听一个 tap 事件, 并给这个事件绑定一个全新的匿名函数。~~

~~也就是说:~~
- ~~3秒后,.chapter_title 触发 tap 一次,执行1次事件回调~~
- ~~6秒后,.chapter_title 触发 tap 一次,执行2次事件回调~~
- ~~9秒后,.chapter_title 触发 tap 一次,执行3次事件回调~~

猜测题主的意思是,在绑定 tap 事件后,触发一次 tap,执行了两遍对吗?请在断点处检查调用栈(Call Stack)和事件对象(由于你的回调函数没有声名参数,所以事件对象应该是 arguments[0]),核实触发原因。

而题主问题中调试工具所显示的VM15142是一个没有特别含义的名称,实际上来区分没有直接文件从属关系的上下文,例如在执行某个闭包的时候,在这里就是在执行tap事件回调。如果想了解更多的情况,可以看这里: https://code.google.com/p/chromium/codesearch#chromium/src/third_party...

遮了一弯 2022-09-08 12:08:54

可以console.trace看下函数的调用堆栈

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文