您的位置:首页 > 其它

【百度地图API】如何制作孪生姐妹地图?

2010-12-21 14:02 381 查看
任务描述:  我想要两张一模一样的地图!我想要双子地图!我想要孪生姐妹地图!  好好好,统统满足大家!  在这里我不需要使用百度地图API提供的地图缩略图控件,而是自己动手做一对双胞胎地图! 如何实现?  创建两张地图,map1和map2,他俩的中心点和地图级别(放大倍数)不同。  当鼠标移动map1的中心点时,map2的中心点会随着一起变化,最终和map1的中心点一致。  同理,可以实现用鼠标滚轮放大缩小地图。 操作试试:  移动左边的地图,右边的地图会随着一起运动;  对左边的地图使用鼠标滚轮(中键),右边的地图也会放大或者缩小。 图示:

运行代码,请点击这里。 代码:
代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="keywords" content="百度地图,百度地图API,百度地图自定义工具,百度地图所见即所得工具" />
<meta name="description" content="百度地图API自定义地图,帮助用户在可视化操作下生成百度地图" />
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>两个地图联动</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?key=46ce9d0614bf7aefe0ba562f8cf87194&v=1.1&services=true">
</script>
</head>
<body>
<p>
任务描述:当map1运动完以后,map2会跟着map1一起,改变中心点,改变放大级别。
</p>
<div style="float:left;">
<p>MAP1</p>
<div style="width:520px;height:340px;border:1px solid gray" id="container1"></div>
</div>
<div style="float:left;">
<p>MAP2</p>
<div style="width:520px;height:340px;border:1px solid gray" id="container2"></div>
</div>
</body>
<script type="text/javascript">
var map1 = new BMap.Map("container1");
var map2 = new BMap.Map("container2");

var point1 = new BMap.Point(116.411053,39.950507);    // 创建中心点
var point2 = new BMap.Point(116.411053,39.950507);    // 创建中心点

map1.centerAndZoom(point1,12);                     // 初始化地图map1,设置中心点和地图级别。
map2.centerAndZoom(point2,12);         // 初始化地图map2,让地图级别和map1一致。

map1.addEventListener("moveend",function(){map2.panTo(map1.getCenter());});   //让map2跟着map1走
map1.addEventListener("zoomend",function(){map2.zoomTo(map1.getZoom());});   //让map2的地图等级与map1一致

map1.enableScrollWheelZoom();                  // 启用滚轮放大缩小
</script>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐