高德地图AMap.MouseTool插件多次测距不能清除bug

这篇具有很好参考价值的文章主要介绍了高德地图AMap.MouseTool插件多次测距不能清除bug。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

AMap.MouseTool插件是一个很有用的插件,可以在地图上画折线测量距离,也可以在地图上画区域测量面积,这些在客户的一些高级需求里经常出现,最近使用出现了bug,此bug在官网的示例里也能重现

官网demo上重现步骤如下图, 

1.点击左侧菜单,打开插件示例;

2.点击测量距离radio;3.在地图上点击测量出一个折线距离

4.切换到面积测量radio;5.在地图上点击,选中一片区域

6.切换回测量距离;7.在地图上再点击测量出一个折线距离

8.点击下面的关闭按钮,此时会调用插件的清除方法,但是地图上第一次画的折线没有删除

高德地图AMap.MouseTool插件多次测距不能清除bug

鼠标工具-距离面积测量-工具类-示例中心-JS API 示例 | 高德地图API

----------------------------------------------

解决思路:

1.F12探针查看元素,发现是多了overlay和几个marker,然后就想把多出来的overlay和marker存入缓存然后hide(),结果定位的marker莫名其妙取不出来,只隐藏了marker对应的content文字部分

2.发现测量距离的最后一个点上的content内容后面有个叉号,点击叉号就可以关闭,叉号图标有个特别的class="delimg",只要主动触发就可以关闭了,于是开始操作:

var e = document.createEvent("MouseEvents");
e.initEvent("click", true, true);
const notDeleteLineCount = document.getElementsByClassName("delimg").length;
for (var i = 0; i < notDeleteLineCount; i++) {
   document.getElementsByClassName("delimg")[0]?.dispatchEvent(e);
   }

完美解决文章来源地址https://www.toymoban.com/news/detail-462433.html

到了这里,关于高德地图AMap.MouseTool插件多次测距不能清除bug的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • H5页面在ios的浏览器上使用 高德地图 报当前定位失败Geolocation permission denied 或者 偶尔报AMap没有找到的

       可以去高德api查看:常见问题 | 高德地图API (amap.com)   图中红圈2,3,4,5,6对应Geolocation permission denied报错的原因,可对应修改。 如红圈2:用户打开定位选项即可:   1.在index.html文件中; 2.在封装高德api的文件下对应调整:  

    2024年02月12日
    浏览(40)
  • 关于升级高德地图导航9.5.0以上版本的问题 ‘com.amap.api:navi-3dmap:X.X.X_3dmapX.X.X‘

    问题(1. 最近打开项目,发现高德有新版本更新,果断更新。哈哈哈哈。然而结果好像并没有这么简单。要是世界上什么事情这么简单就好了。年轻人。还是太年轻了啊。 然后更新完最新的依赖 然后就报错了。具体就四个要点,中间一样的省略一万个字。

    2024年02月16日
    浏览(29)
  • UniApp 制作高德地图插件

    1、下载Uni插件项目 在Uni官网下载Uni插件项目,并参考官网插件项目创建插件项目. 开发者须知 | uni小程序SDK 如果下载下来项目运行不了可以参考下面链接进行处理 UniApp原生插件制作_wangdaoyin2010的博客-CSDN博客 2、引入高德SDK 2.1 在高德官网下载对应SDK 相关下载-Android 地图SD

    2024年02月12日
    浏览(81)
  • uni-app离线打包高德地图导入android studio不能正常显示

    本人使用的uni-app SDK版本:Android-SDK@3.8.7.81902_20230704 1.导入以上文件,依赖已经自动添加了 2.确保这个正常引入 3.修改AndroidMainifest.xml,添加自己的密钥

    2024年02月13日
    浏览(42)
  • flutter实现调用原生安卓的高德地图导航功能(插件化)

    查看了高德地图flutter插件的文档,都没有能支持导航的功能,并且flutter的高德插件支持的功能特别少,没办法,只能使用安卓原生的导航,flutter去调用了,具体实现方式如下: 创建 Flutter 插件 使用--template=plugin 声明创建的是同时包含了 iOS 和 Android 代码的 plugin; 使用--o

    2024年02月16日
    浏览(37)
  • 高德地图 其他地图坐标系转化为高德坐标系

    此篇以百度地图为例  1、去高德地图注册自己的key(注册流程可借鉴百度地图注册流程) 2、什么是坐标 地球坐标系——WGS84:常见于 GPS 设备,Google 地图等国际标准的坐标体系。 火星坐标系——GCJ-02:中国国内使用的被强制加密后的坐标体系,高德坐标就属于该种坐标体系

    2024年02月08日
    浏览(32)
  • 高德地图系列(三):vue项目利用高德地图实现地址搜索功能

    目录 第一章 效果图 第二章 源代码 高德地图为我们提供了搜索联想,以及搜索结果标记,该案例已将基础功能打通,后续我们肯定还会对功能有所修改,想实现自己想要的效果,基本上看高德地图文档对着改就好了(跟我们用别的工具一样做即可)  代码描述如下:  注意事

    2024年02月03日
    浏览(39)
  • 高德地图与百度地图坐标相互转化

    1. WGS-84原始坐标系 ,一般用国际GPS纪录仪记录下来的经纬度,通过GPS定位拿到的原始经纬度,Google和高德地图定位的的经纬度(国外)都是基于WGS-84坐标系的;但是在国内是不允许直接用WGS84坐标系标注的,必须经过加密后才能使用; 2. GCJ-02坐标系 ,又名“火星坐标系

    2024年02月16日
    浏览(32)
  • 高德地图实现-微信小程序地图导航

    1、在高德开放平台注册成为开发者 2、申请开发者密钥(key)。 3、下载并解压高德地图微信小程序SDK 注册账号(https://lbs.amap.com/)) 申请小程序应用的 key 应用管理(https://console.amap.com/dev/key/app)) - 我的应用 - 创建新应用 生成的 key 即可用在程序中 下载相关 sdk 文件,导入 amap-

    2024年02月08日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包