怎么删除指定的折线,现在删除不了,下面注释的地方是删除全部折线的,我想要的是删除指定的折线
1条回答 默认 最新
- CSDN专家-showbo 2021-11-16 20:48关注
看代码没问题,data查询出来了吗?console.log那句打印出内容了吗?
用下面的代码在百度官网网址下运行是没问题的,感觉题主的data没查询到内容https://lbsyun.baidu.com/jsdemo.htm#dAddClearOverlay
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <style type="text/css"> body, html { width: 100%; height: 100%; margin: 0; } #allmap { height: 100%; width: 100%; } ul li { list-style: none; } .btn-wrap { z-index: 999; position: fixed; bottom: 3.5rem; margin-left: 3rem; padding: 1rem 1rem; border-radius: .25rem; background-color: #fff; box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5); } .btn { width: 75px; height: 30px; float: left; background-color: #fff; color: rgba(27, 142, 236, 1); font-size: 14px; border:1px solid rgba(27, 142, 236, 1); border-radius: 5px; margin: 0 5px; text-align: center; line-height: 30px; } .btn:hover { background-color: rgba(27, 142, 236, 0.8); color: #fff; } </style> <script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=您的密钥"></script> <title>添加/清除覆盖物</title> </head> <body> <div id="allmap"></div> <ul class="btn-wrap" style="z-index: 99;"> <li class = "light btn" onclick = "addOverlay()">添加覆盖物</li> <li class = "night btn" onclick = "removeOverlay()">清除覆盖物</li> </ul> </body> </html> <script type="text/javascript"> var map = new BMapGL.Map('allmap'); var point = new BMapGL.Point(116.404, 39.915); map.centerAndZoom(point, 15); arrData=[[ new BMapGL.Point(116.399, 39.910), new BMapGL.Point(116.405, 39.920), new BMapGL.Point(116.425, 39.900) ],[ new BMapGL.Point(116.399, 39.911), new BMapGL.Point(116.405, 39.922), new BMapGL.Point(116.425, 39.903) ]]; lineArr=[] for(var id=0;id<arrData.length;id++){ arr=arrData[id]; var polyline = new BMapGL.Polyline(arr, { strokeColor: 'blue', strokeWeight: 2, strokeOpacity: 0.5 }); map.addOverlay(polyline); lineArr.push({id,polyline}) } console.log(lineArr) // 清除覆盖物 function removeOverlay() { var data=lineArr.find(item=>item.id==1);//删除id为1的线 console.log(data) map.removeOverlay(data.polyline) } </script>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥60 优博讯DT50高通安卓11系统刷完机自动进去fastboot模式
- ¥15 minist数字识别
- ¥15 在安装gym库的pygame时遇到问题,不知道如何解决
- ¥20 uniapp中的webview 使用的是本地的vue页面,在模拟器上显示无法打开
- ¥15 网上下载的3DMAX模型,不显示贴图怎么办
- ¥15 关于#stm32#的问题:寻找一块开发版,作为智能化割草机的控制模块和树莓派主板相连,要求:最低可控制 3 个电机(两个驱动电机,1 个割草电机),其次可以与树莓派主板相连电机照片如下:
- ¥15 Mac(标签-IDE|关键词-File) idea
- ¥15 潜在扩散模型的Unet特征提取
- ¥15 iscsi服务无法访问,如何解决?
- ¥15 感应式传感器制作的感应式讯响器