為了解決 label太多,文字會重疊看不清 所以提出這種辦法
核心代碼
1,創建的時候 將label設置為隱藏
2,通過百度地圖監聽事件 , mouseover或onmouseover 觸發顯示
3,通過mouseover 或onmouseover 觸發隱藏
// 創建文本標注對象 var label = new BMap.Label(" "+data.data[i][4]+" ", { offset: new BMap.Size(10, -25) }); label.setStyle({ color: "#fff", border: "0", padding: "0", display: "none", background: "rgba(66,117,202,0.9)", fontSize: "12px", height: "20px", lineHeight: "20px", fontFamily: "微軟雅黑" }); marker.setLabel(label); marker.addEventListener("mouseover",function(e){ var label = this.getLabel() label.setStyle({display:"block"}); }); marker.addEventListener("mouseout",function(e){ var label = this.getLabel() label.setStyle({display:"none"}); }); map.addOverlay(marker); //將標記添加到地圖中