传入的事件处理程序相同,removeEventListener() 为什么不能移除事件?

封装了一个 dragdrop 函数,可以对 DOM 元素执行拖放操作,代码如下:

https://img4.mukewang.com/5c340484000107ea04790927.jpg

拖放操作是没有问题的,但是不能移除事件,也就是代码中的

dragdrop(test).remove();

这句话没有效果,不知道为什么???

我知道通过 addEventListener() 注册的事件需要 removeEventListener() 来解除,而且传入的函数必须一样,但是我确实是传的同一个函数呀,都是传的 handler ,为什么不能移除事件?


慕容3067478
浏览 414回答 1
1回答

郎朗坤

因为你那种写法是分别两个不同的对象,应该这样var obj = dragdrop(test);obj.register();obj..remove();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript