自2018年10月18日起,高德开发者论坛除车机板块外,其他板块将停止发帖与维护,如您有使用问题请 提交工单 联系我们,感谢您的理解。

查看: 509|回复: 1
打印 上一主题 下一主题

[已解决]判断事件是否监听

[复制链接]
最佳答案
1 

14

主题

29

帖子

118

积分

新手上路

Rank: 1

积分
118
跳转到指定楼层
楼主
发表于 2016-6-2 11:34:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Theseven77 于 2016-6-2 11:36 编辑

室内地图JSAPI1.0 里的事件
hasEventListeners( <String> type ) 判断事件是否已注册,这个怎么用呢?
我的需求是:当我点击左边菜单的按钮的时候,获取到这个按钮的数据(dataId,dataName,Icon),然后绑定事件,点击地图,添加相对应的marker。当我点击另一个按钮的时候,同样执行此操作,但是这样就注册了两次事件,给地图上就会一次添加两个marker了,所以需要在点击按钮的时候判断是否已经注册事件,如果有的话,移除事件,重新注册事件。
  1.   function addData(icon,dataId,dataName){
  2.            var myIcon = Indoor.icon({
  3.                                  iconUrl:"/scada/"+icon,
  4.                                });
  5.            var marker = myIndoormap.on("click",function(e){
  6.                                  Indoor.marker(e.latlng,{
  7.                                  icon:myIcon,
  8.                                  draggable:true,
  9.                                  title:dataName,
  10.                                 riseOnHover:true,
  11.                           }).addTo(myIndoormap);
  12.                 });
  13.      }
复制代码
在这个基础上应该怎么修改呢,谢谢了~~

回复

使用道具 举报

最佳答案
1 

14

主题

29

帖子

118

积分

新手上路

Rank: 1

积分
118
沙发
 楼主| 发表于 2016-6-2 11:59:54 | 只看该作者    本楼为最佳答案   
已经解决了~选择只执行一次的事件就好了~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|高德开发者论坛

Copyright ©2014 高德开发者论坛.All Rights Reserved |京ICP证070711号

意见反馈 常见问题 服务条款 联系我们
快速回复 返回顶部 返回列表