删除铯中的事件监听器



我搜索了很多,以找到在Cesium中删除事件侦听器的正确方法。我相信我的困惑在于是否将铯事件视为常规dom事件(由于缺乏javascript中关于事件的一般知识(。我正在创建一个屏幕空间事件,如下所示:

var handler = new Cesium.ScreenSpaceEventHandler(canvas);
handler.setInputAction(function (movement) {
var picked = scene.pick(movement.endPosition);
if (Cesium.defined(picked) && picked.id === someEntity) {
labelEntity.position = someEntity.position;
labelEntity.label.show = true;
} else {
labelEntity.label.show = false;
}
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);

我的问题是,如何删除此事件?handler.destroy()是删除所有与处理程序关联的事件侦听器,还是我必须通过指向铯映射dom元素并在其上调用removeEventListener来删除事件侦听器?如果是这种情况,应该向removeEventListener传递哪些参数?

removeInputAction的参数只是type和可选的modifer,并且看起来您没有使用修饰符(SHIFT键、ALT键等(

因此,对于您在上面发布的代码,删除将是:

handler.removeInputAction(Cesium.ScreenSpaceEventType.MOUSE_MOVE);

相关内容

  • 没有找到相关文章

最新更新