百度地图API地图的创建、点击点的创建及清除

1.引入百度地图的必要文件
javascript
css
2.代码

 //定义全局变量保存选择的场地信息  lon,lat;lon,lat
 var lonAndLat = "";

  //百度地图场地位置选择初始化
  var map = new BMap.Map("cdLonLatArea");
  initArea = function () {
      //初始化百度地图
      //设置中心点坐标  设置秦皇岛附近
      var point = new BMap.Point(119.531809,39.957645);
      //地图初始化,同时设置地图展示级别
      map.centerAndZoom(point, 15);
      //开启鼠标滚轮缩放
      map.enableScrollWheelZoom(true);
      //表示显示小型的平移缩放控件
      var opts = {type: BMAP_NAVIGATION_CONTROL_SMALL}
      map.addControl(new BMap.NavigationControl(opts));
      //用户点击地图增加marker
      map.addEventListener('click', function(e) {
          //全局变量存储数值
          if(lonAndLat==""){
              lonAndLat =e.point.lng+","+e.point.lat;
              lastPoint = lonAndLat;
          }else{
              lonAndLat = lonAndLat+";"+e.point.lng+","+e.point.lat;
          }
          var marker = new BMap.Marker(new BMap.Point(e.point.lng, e.point.lat))
          map.addOverlay(marker)
          alert(lonAndLat);
      })


  }
  initArea();

      //清除所有的点
      removelastPoint =  function () {
          debugger
          var allOverlay = map.getOverlays();
          for(var i = 0;i<allOverlay.length;i++) {
              map.removeOverlay(allOverlay[i]);
          }
          //全局存储变量变为空 
                lonAndLat = "";
      }

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
清除百度地图上指定的覆盖物可以通过以下步骤实现: 1. 首先,确保已经加载了百度地图API,并创建地图实例。 2. 在地图上绘制了覆盖物后,为了清除指定的覆盖物,需要为每个覆盖物添加一个唯一的标识符(通常是一个字符串)。 3. 在需要清除指定覆盖物的时候,通过调用API提供的方法,查找并获取需要清除的覆盖物对象。 4. 调用获取到的覆盖物对象的`remove()`方法,将其从地图中移除。 以下是一个示例代码,演示了如何清除指定的覆盖物。 ```javascript // 创建地图实例 var map = new BMap.Map("map-container"); // 添加覆盖物,并为其设置唯一标识符 var marker1 = new BMap.Marker(new BMap.Point(116.404, 39.915)); marker1.myId = "marker1"; map.addOverlay(marker1); var marker2 = new BMap.Marker(new BMap.Point(116.417, 39.909)); marker2.myId = "marker2"; map.addOverlay(marker2); // 清除指定的覆盖物 function removeOverlayById(id) { var overlays = map.getOverlays(); for (var i = 0; i < overlays.length; i++) { if (overlays[i].myId === id) { map.removeOverlay(overlays[i]); break; } } } // 调用清除覆盖物的方法 removeOverlayById("marker1"); ``` 以上代码示例中,我们通过为每个覆盖物对象设置了`myId`属性,代表它们的唯一标识符。然后,通过遍历地图上所有覆盖物对象的方式,找到需要清除的覆盖物对象,并调用地图实例的`removeOverlay()`方法进行清除。 希望以上回答对您有帮助!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值