var mp = new BMap.Map("allmap",{minZoom:16,maxZoom:19,enableMapClick: false});?? ?mp.centerAndZoom(new BMap.Point(114.324421,30.534198), 15);?? ?mp.enableScrollWheelZoom();?? ??? ?// 復(fù)雜的自定義覆蓋物?? ?$.get('/ph/Api/get_ban_map_point',function(res){?? ??? ?res = JSON.parse(res);?? ??? ?var aDate = res.data.point.length;?? ??? ?console.log(res);?? ??? ?for(var i=0;i<aDate;i++){?? ??? ??? ??? ?ComplexCustomOverlay.prototype = new BMap.Overlay();??? ComplexCustomOverlay.prototype.initialize = function(map){????? this._map = map;????? var div = this._div = document.createElement("div");????? div.style.backgroundColor = "#2d69f9";???? ?????? div.style.color = "white";????? div.style.width = "110px";????? div.style.padding = "5px";????? div.style.lineHeight = "18px";????? div.style.whiteSpace = "nowrap";????? div.style.MozUserSelect = "none";????? div.style.fontSize = "12px"????? var span = this._span = document.createElement("span");????? div.appendChild(span);????? span.appendChild(document.createTextNode(this._text));???? ?????? var that = this;????? var arrow = this._arrow = document.createElement("div");????? arrow.style.width = "0px";????? arrow.style.position = "absolute";????? arrow.style.height = "0px";????? arrow.style.borderLeft = "10px solid transparent";????? arrow.style.borderRight = "10px solid transparent";????? arrow.style.borderTop="10px solid #2d69f9" ????? arrow.style.left="20px";????? arrow.style.top="25px";????? div.appendChild(arrow);??? ?????? div.onmouseover = function(){??????? this.style.backgroundColor = "#ff6400";??????? arrow.style.borderLeft = "10px solid transparent";?? ???? arrow.style.borderRight = "10px solid transparent";?? ???? arrow.style.borderTop="10px solid #ff6400" ;????? }????? div.onmouseout = function(){??????? this.style.backgroundColor = "#2d69f9";//????? this.style.borderColor = "#BC3B3A";??????? this.getElementsByTagName("span")[0].innerHTML = that._text;//????? arrow.style.backgroundPosition = "0px 0px";? ?? ??? ?arrow.style.borderLeft = "10px solid transparent";?? ?????? arrow.style.borderRight = "10px solid transparent";?? ?????? arrow.style.borderTop="10px solid #2d69f9" ;????? }????? mp.getPanes().labelPane.appendChild(div);???? ?????? return div;??? }??? ComplexCustomOverlay.prototype.draw = function(){????? var map = this._map;????? var pixel = map.pointToOverlayPixel(this._point);//??? this._div.style.left = pixel.x - parseInt(this._arrow.style.left) + "px";//??? this._div.style.top? = pixel.y - 30 + "px";??? }? ???? ???? var myCompOverlay = new ComplexCustomOverlay(new BMap.Point(res.data.point[i].BanGpsX,res.data.point[i].BanGpsY), res.data.point[i].BanID);??? mp.addOverlay(myCompOverlay);? ??? ??? ?}?? ?})//get?? ???? function ComplexCustomOverlay(point, text){????? this._point = point;????? this._text = "編號(hào):"+text; ???? }為什么位置都湊到一起去了。
百度地圖自定義覆蓋物
kathria
2017-09-21 22:34:25