百度地图标注

for(i=0;i<循环次数;i++){
			
			var marker=new BMap.Marker(Point对象);//创建标注
			var html='你自己的html';
			var infoWindow = new BMap.InfoWindow(html);//创建窗口信息
			marker.infoWindow=infoWindow;//给当前标注新增一个属性以便保存窗口信息infoWindow
			
			marker.addEventListener("click", function(e){//添加标注的点击事件回调
    this.openInfoWindow(e.target.infoWindow);//点击标注时,打开改标注对应的回调信息
    //如果没猜错,你原来在这里的代码应该如下:
    //this.openInfoWindow(infoWindow);
    //那样就会导致每次标注点击后,弹出的窗口信息都是最后一次循环的infoWindow。
    //因为在click的时候只会去找infoWindow这个变量值,而你的click肯定是在所有循环的
    //标注都产生完之后,此时infoWindow变量已经被赋值成了最后一次循环的值。
			});					 	
			map.addOverlay(marker);//添加标注到地图
		}

标注框样式设置

可以将标签写入content然后给info写样式即可

例如:marker.content = "<div><p>信息点</p><p class='info'>我是第' + (i + 1) + '个Marker</p></div";

var data_info = [[12,"<div><p class='se_info'>乐学院校区</p></div>"],
        [12,"<div><p class='se_info'>mall校区</p></div>"],
        [12,"<div><p class='se_info'>天街校区</p></div>"]
    ];
    

猜你喜欢

转载自blog.csdn.net/sz_09/article/details/81132146
今日推荐