欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

百度地图清除指定覆盖物(Overlay),保留某种覆盖物( disableMassClea),清除保留的覆盖物(enableMassClear)

程序员文章站 2022-07-02 09:25:09
...

1.map.removeOverlay();

removeOverlay()一次移除一个指定覆盖物

function deletePoint(){
        var allOverlay = map.getOverlays();
        for (var i = 0; i < allOverlay.length -1; i++){
            if(allOverlay[i].getLabel().content == "我是id=1"){
                map.removeOverlay(allOverlay[i]);
                return false;
            }
        }
    }

2.map.clearOverlays()

clearOverlays()方法一次移除所有的覆盖物

function deleteAllOverlays(){
    map.clearOverlays();
}

3.disableMassClear()保留某种覆盖物

 

我这里不需要对marker进行移除操作,所以设置如下:

marker.disableMassClear();

第二步:清除所要清除的覆盖物,这里需要清除所有的Polyline而不清除marker,现在可以直接使用

map.clearOverlays();

这样就能很方便的清除所有Polyline而保留marker;

4.enableMassClear() 取消禁止清除

但是需要对每个marker进行恢复操作,所以需要进行遍历:

 var allOverlay = map.getOverlays();
  for (var i = 0; i < allOverlay.length; i++) {
       allOverlay[i].enableMassClear();
  }

这样就恢复了所有覆盖物的可清除操作