关于鼠标相关事件重复绑定

0 投票
项目中,需要叠加多种类型的要素(图标),都是左键点击要素触发,不同要素之间触发的事件处理方法不相同,发现同时绑定相同事件类型(left_click)时,左键点击后会在每个要素的方法回调里重复触发。查阅文档发现是没有相关作用域绑定参数,请问下,这个有什么好的办法解决吗?
12月 23, 2019 分类:  66次浏览 | 用户: 信念依旧 (6 分)

1个回答

0 投票
 
已采纳
您是想实现不同要素的点击触发不同的事件吗?

您最好是切缓存的时候使用切场景缓存(多个图层)不要使用批量生成缓存(单个图层),这样的话就不需要判断获取的feature是属于那个数据集的了。

您获取feature后,进入pickevent事件,然后通过feature的图层去判断,然后实现不同的事件
12月 24, 2019 用户: 赵爽 登峰造极 (6,206 分)
采纳于 12月 24, 2019 用户:信念依旧
不好意思,刚用不久,请问你说的这个场景缓存指的是。我现在是封装了一个常用的业务场景,写了一个批量绘制PointPrimitive的类,类内部注册点击点的事件,鼠标移入的事件。多次实例化,因为事件注册没有作用域的概念,就会出现事件多次注册,造成多次执行。

您问题中所说的要素指的是什么,不是缓存吗?而是在前段自己绘制的?感觉您的问题应该是源生Cesium的问题吧,好像没有用到我们的接口。

是这样的,我们有一个接口是专门写点击事件的。

http://support.supermap.com.cn:8090/webgl/examples/editor.html#S3MTiles_BIM您可以看一下这个示例,点击这个模型中的任意图元,都会触发查询事件。

http://support.supermap.com.cn/DownloadCenter/ProductLiterature.aspx您也可以看一下我们的在线课程

好的,谢谢~
...