我在点击构件的监听事件里面写了自己的回调方法,我想去除它,应该怎么办?
采用事件监听给对象绑定方法后,可以解除相应的绑定,写法如下
btn.addEventListener("click",someFunciton);
btn.removeEventListener("click",someFunciton);
前面两位都说的挺对的。
具体基于BIMFACE的API讲
//增加模型选中的监听事件
viewer.addEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ComponentsSelectionChanged,adddraw);
//自定义一个回调函数
function adddraw(componentData){
console.log(componentData);
}
//移除选中构件的监听事件,把自定义的回调函数传进去
function deletedraw(){
viewer.removeEventListener(Glodon.Bimface.Viewer.Viewer3DEvent.ComponentsSelectionChanged,adddraw)
viewer.render();
}
必须要把具体的监听函数单独写出来
监听事件是观察者模式,这是要告诉事件发布者,监听事件触发的时候,不要调用之前注册的那个回调函数了
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
div.removeEventListener('click', listener, false);
只不过 没有必要。
监听就监听了 怎么样执行可以加附属逻辑