概述
PoiMarker.prototype = newBMap.Overlay();
PoiMarker.prototype.initialize= function(map) {this._map =map;
const div= this._div = document.createElement("div");
div.style.zIndex= BMap.Overlay.getZIndex(500);
div.style.position= "absolute";
div.style.background= "url(http://s.xxx.com/images/bcg-green.png) no-repeat bottom";
div.style.cursor= "pointer";
div.style.height= "42px";
const img= document.createElement("img");
img.src= this._img
div.style.zIndex= BMap.Overlay.getZIndex(400);
img.style.height= "36px";
img.style.width= "36px";
img.style.borderRadius= "26px";
img.style.border= "2px solid #72b80a";
div.appendChild(img);//POI点击事件
div.onclick = (e) =>{//禁止事件冒泡
const oEvent = e ||event;
oEvent.cancelBubble= true;//删除其它的 poiInfoWindowMarker
//获取地图上所有的覆盖物
const allOverlay = this._map.getOverlays();
for (const item of allOverlay) {
if (item instanceof PoiInfoWindowMarker) {
this._map.removeOverlay(item);
}
}
const poiInfoWindowMarker= new PoiInfoWindowMarker(this._point, this._img);//添加节点数覆盖物到地图上(并将覆盖物注册)
this._map.addOverlay(poiInfoWindowMarker);
};
map.getPanes().labelPane.appendChild(div);returndiv;
};
PoiMarker.prototype.draw= function() {
const map= this._map;
const pixel= map.pointToOverlayPixel(this._point);this._div.style.left = (pixel.x - 18) + "px";this._div.style.top = (pixel.y - 40) + "px";
};this.poiMarker = PoiMarker
最后
以上就是贪玩芹菜为你收集整理的vuebaidumap 删除覆盖物_百度地图JavaScript如何清除指定类型的覆盖物的全部内容,希望文章能够帮你解决vuebaidumap 删除覆盖物_百度地图JavaScript如何清除指定类型的覆盖物所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复