关于百度地图最大层级聚合点鼠标覆盖弹出对话框需求实现

需要的开源库
1.MarkerClusterer.js :计算聚合点的生成
2.TextIconOverlay.js : 聚合点的图标

需求:

1. 点击聚合点 判断是不是最大层级;如果不是最大层级,继续点击,如果是最大层级则不能点击,鼠标覆盖聚合类的图标。图标发生改变,同事弹出框,鼠标可以点击框里面的每一项的数据;

实现方法:

1,判断是不是最大层级 需要在实例化聚合类的时候 增加参数maxZoom:20;因为百度地图最大是19层级;

new BMapLib.MarkerClusterer(map, {
markers: markers,
maxZoom: options.maxZoom || 20,
margins: options.margins || [90, 500, 80, 400]
});
判断最大层级的方法 :map.getZoom();可以返回当前地图的最大层级;

2.鼠标覆盖图标改变;
需要修改 TextIconOverlay.js源码;源码可以很容易理解。
TextIconOverlay 里面有鼠标覆盖和移出的事件。具体代码鉴于公司保密不贴出来。初始化的时候也可以改,如果你是使用的是框架的话 需要把静态图标放到public文件不参与编译,不然文件名字发生变化。

3.弹框的实现是采用的label;通过marker点来获取所有聚合点下的数据;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值