百度地图-多个坐标点显示

简介:

做项目的时候需要用到的功能,一个页面上,左边是各个地点,右边是地图,一开始把所有的点全都标注在地图上,点左边的每个地点后地图移动到以该点为中心,点击地图上的坐标点会显示出相关的信息,

对着百度地图的文档一点一点做出来了,先记下来,以作备用!!!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>百度地图-多个坐标点一起显示</title>
    <style type="text/css">
		 #allmap {width: 100%;height: 600px;overflow: hidden;margin:0;font-family:"微软雅黑";}
	</style>
</head>
<body>
    <table style="width:100%">
        <tr>
        <td style="width:250px;"> 
            <ul>
                <li><a href="javascript:void(0)" onclick="to(116.404,39.915)">水厂1</a></li>
                <li><a href="javascript:void(0)" onclick="to(116.383752,39.91334)">水厂2</a></li>
                <li><a href="javascript:void(0)" onclick="to(116.384502,39.932241)">水厂3</a></li>
            </ul>
        </td>
        <td>
                <div id="allmap"></div>
        </td>
    </tr>
    </table>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=SyRux96r0i0Xue1Qqp0ZPb4uCc8BC6Aw"></script>
    <script type="text/javascript">
        // 百度地图API功能
        var map = new BMap.Map("allmap");
        var point = new BMap.Point(116.404, 39.915);
        map.centerAndZoom(point, 15);
        
        var json_data = [[116.404,39.915,'水厂1<br />地址:中华路1号'],[116.383752,39.91334,'水厂2<br />地址:兴宁路13号'],[116.384502,39.932241,'水厂3<br />地址:友爱路3-5号']];
        var pointArray = new Array();

	var opts = {
				width : 250,     // 信息窗口宽度
				height: 80,     // 信息窗口高度
				title : "" , // 信息窗口标题
				enableMessage:true//设置允许信息窗发送短息
			   };

        for(var i=0;i<json_data.length;i++){
            var marker = new BMap.Marker(new BMap.Point(json_data[i][0], json_data[i][1])); // 创建点
            map.addOverlay(marker);    //增加点
            pointArray[i] = new BMap.Point(json_data[i][0], json_data[i][1]);
            var content = json_data[i][2];
            addClickHandler(content,marker);
           
        }
        //让所有点在视野范围内
        map.setViewport(pointArray);

        	function addClickHandler(content,marker){
		marker.addEventListener("click",function(e){
			openInfo(content,e)}
		);
	}
	function openInfo(content,e){
		var p = e.target;
		var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
		var infoWindow = new BMap.InfoWindow(content,opts);  // 创建信息窗口对象 
		map.openInfoWindow(infoWindow,point); //开启信息窗口
	}
       	
//移动到某一坐标点
           function to(x,y){
            map.panTo(new BMap.Point(x,y)); 

           }
    </script>
</body>
</html>

baidumap_mpoint.png

目录
相关文章
|
2月前
uniApp获取当前位置经纬度
uniApp获取当前位置经纬度
45 0
|
17天前
|
JavaScript 前端开发 定位技术
GPS坐标显示在百度地图上(Qt+百度地图)
GPS坐标显示在百度地图上(Qt+百度地图)
13 0
|
5月前
|
资源调度 Java Python
如何在地图上寻找最密集点的位置?
最近我在工作中遇到了一个小的需求点,大概是需要在地图上展示出一堆点中的点密度最密集的位置。最开始没想到好的方法,就使用了一个非常简单的策略——所有点的坐标求平均值,这个方法大部分的时候好用,因为大部分城市所有点位基本上都是围绕某个中心点向四周发散的。但我们实际在线上使用的时候,遇到了两个特殊的case。
36 0
|
定位技术 C# Windows
C#编程学习(05):使用webbroswer控件显示地图并标注点位坐标
C#编程学习(05):使用webbroswer控件显示地图并标注点位坐标
|
9月前
|
JavaScript 前端开发 定位技术
百度地图开发:php坐标转换服务将常用的非百度坐标转换成百度地图中使用的坐标
百度地图开发:php坐标转换服务将常用的非百度坐标转换成百度地图中使用的坐标
48 0
|
9月前
|
定位技术
echarts. registerMap选项specialAreas将地图中的部分区域缩放到合适的位置,可以使得整个地图的显示更加好看
echarts. registerMap选项specialAreas将地图中的部分区域缩放到合适的位置,可以使得整个地图的显示更加好看
69 0
|
9月前
|
定位技术 API
百度地图和腾讯地图开发经纬度的位置是互换的
百度地图和腾讯地图开发经纬度的位置是互换的
332 0
|
10月前
|
小程序 定位技术
小程序地图转百度地图坐标
小程序地图转百度地图坐标
102 0
|
定位技术
使用地图显示我的位置
使用地图显示我的位置
75 0
|
定位技术
高德地图获取当前屏幕中心点的经纬度
高德地图获取当前屏幕中心点的经纬度
275 0
高德地图获取当前屏幕中心点的经纬度