怎么在百度地图上,同时显示多个标注。 10
我做一个站,左边是网站的信息列表,右边可以在地图上显示相应的标注。我觉得下面的样式不错,怎么能让他显示多个不同的标注呢?<scripttype="text/javascr...
我做一个站,左边是网站的信息列表,右边可以在地图上显示相应的标注。
我觉得下面的样式不错,怎么能让他显示多个不同的标注呢?
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ECac9a51e4ac2b4b5042aef99e48edad"></script>
<div id="allmap" style="width: 100%; height: 100%;"></div>
<script type="text/javascript">
// 百度地图API功能
var sContent =
"<h4 style='margin:0 0 5px 0;padding:0.2em 0'>天安门</h4>" +
"<img style='float:right;margin:4px' id='imgDemo' src='http://app.baidu.com/map/images/tiananmen.jpg' width='222' height='111' title='天安门'/>" +
"<p style='margin:0;line-height:1.5;font-size:13px;text-indent:2em'>作者:黄金华 发布日期:2013年11月3日</p>" +
"<p style='margin:0;line-height:1.5;font-size:13px;text-indent:2em'>天安门坐落在中国北京市中心,故宫的南侧,与天安门广场隔长安街相望,是清朝皇城的大门...</p>" +
"</div>";
var map = new BMap.Map("allmap");
var point = new BMap.Point(116.404, 39.915);
var marker = new BMap.Marker(point);
var infoWindow = new BMap.InfoWindow(sContent); // 创建信息窗口对象
map.centerAndZoom(point, 15);
map.addOverlay(marker);
marker.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
//图片加载完毕重绘infowindow
document.getElementById('imgDemo').onload = function (){
infoWindow.redraw(); //防止在网速较慢,图片未加载时,生成的信息框高度比图片的总高度小,导致图片部分被隐藏
}
});
</script> 展开
我觉得下面的样式不错,怎么能让他显示多个不同的标注呢?
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ECac9a51e4ac2b4b5042aef99e48edad"></script>
<div id="allmap" style="width: 100%; height: 100%;"></div>
<script type="text/javascript">
// 百度地图API功能
var sContent =
"<h4 style='margin:0 0 5px 0;padding:0.2em 0'>天安门</h4>" +
"<img style='float:right;margin:4px' id='imgDemo' src='http://app.baidu.com/map/images/tiananmen.jpg' width='222' height='111' title='天安门'/>" +
"<p style='margin:0;line-height:1.5;font-size:13px;text-indent:2em'>作者:黄金华 发布日期:2013年11月3日</p>" +
"<p style='margin:0;line-height:1.5;font-size:13px;text-indent:2em'>天安门坐落在中国北京市中心,故宫的南侧,与天安门广场隔长安街相望,是清朝皇城的大门...</p>" +
"</div>";
var map = new BMap.Map("allmap");
var point = new BMap.Point(116.404, 39.915);
var marker = new BMap.Marker(point);
var infoWindow = new BMap.InfoWindow(sContent); // 创建信息窗口对象
map.centerAndZoom(point, 15);
map.addOverlay(marker);
marker.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
//图片加载完毕重绘infowindow
document.getElementById('imgDemo').onload = function (){
infoWindow.redraw(); //防止在网速较慢,图片未加载时,生成的信息框高度比图片的总高度小,导致图片部分被隐藏
}
});
</script> 展开
1个回答
推荐于2016-10-04 · 知道合伙人互联网行家
关注
展开全部
网站标记代码如下:
// 编写自定义函数,创建标注
function addMarker(point, lable, Htmlname, myIcon) {
//创建标注点
var marker = new BMap.Marker(point, { icon: myIcon });
map.addOverlay(marker);
//添加文字
var label = new BMap.Label(lable, { offset: new BMap.Size(-30, 22) });
marker.setLabel(label);
//获取弹出窗体内容
var sContent = getInnerHtml(Htmlname);
var infoWindow = new BMap.InfoWindow(sContent); // 创建信息窗口对象
//添加点击标注点事件
marker.addEventListener("click", function () {
window.marker = marker;
this.openInfoWindow(infoWindow);
//图片加载完毕重绘infowindow
document.getElementById('r-result').onload = function () {
infoWindow.redraw();
}
});
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询