当前位置:  开发笔记 > 编程语言 > 正文

我怎么知道removeEventListener成功了?

如何解决《我怎么知道removeEventListener成功了?》经验,为你挑选了1个好方法。

有没有办法确认revmoveEventListener是否成功?我正在视频元素上使用它进行"播放"/"暂停"事件.我试图实现的行为似乎不一致.这是我如何使用它的一个例子.

var playListener = function(){
  console.log("video is playing") 
}

videoElement.addEventListener("playing", playListener)

在我的代码中的其他地方

videoElement.removeEventListener("playing", playListener)

playListener可用于我正在使用removeEventListener并且我传递视频元素的id所以它与我添加事件监听器的视频元素相同.

我想知道我是否可以使用某种console.log或确认removeEventListener工作的东西.



1> nderscore..:

不幸的是,该removeEventListener方法在没有成功删除事件侦听器时不返回任何内容或抛出错误.还没有JavaScript方法来访问当前为给定元素设置的事件侦听器.

就调试问题而言,大多数现代浏览器的开发人员工具都提供了查看事件监听器的功能.您可以debugger在代码中放置一个语句(或设置断点),以便在调用之前暂停执行removeEventListener:

debugger;
videoElement.removeEventListener("playing", playListener);

达到断点并暂停执行后,从Chrome开发工具的"元素"选项卡中检查事件侦听器,以验证当前是否设置了事件侦听器:

Chrome开发工具事件列表工具

您还可以在Firefox Dev Tools的"检查器"选项卡中找到事件侦听器:

Firefox Dev Tools事件监听器

在验证您的事件监听器当前已设置后,返回调试器(Chrome"Sources"选项卡/ Firefox"调试器"选项卡)并逐行逐步执行代码(F10).

拨打电话后removeEventListener,请返回并再次检查您的事件监听器.如果成功,则不应再设置事件侦听器.完成调试后,即可恢复代码执行(F8).

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有