分享

百度地图

 昵称21365845 2015-07-21
  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  
  5. <title>百度地图Demo</title>  
  6. <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>  
  7. </head>  
  8. <body>  
  9. <div style="width:520px;height:340px;border:1px solid gray" id="container"></div>  
  10. </body>  
  11. </html>  
  12.   
  13. <script type="text/javascript">  
  14. var map = new BMap.Map("container");//初始化地图                      
  15. map.addControl(new BMap.NavigationControl());  //初始化地图控件                
  16. map.addControl(new BMap.ScaleControl());                     
  17. map.addControl(new BMap.OverviewMapControl());                
  18. var point=new BMap.Point(116.404, 39.915);  
  19. map.centerAndZoom(point, 15);//初始化地图中心点  
  20. var marker = new BMap.Marker(point); //初始化地图标记  
  21. marker.enableDragging(); //标记开启拖拽  
  22.   
  23. var gc = new BMap.Geocoder();//地址解析类  
  24. //添加标记拖拽监听  
  25. marker.addEventListener("dragend", function(e){  
  26.     //获取地址信息  
  27.     gc.getLocation(e.point, function(rs){  
  28.         showLocationInfo(e.point, rs);  
  29.     });  
  30. });  
  31.   
  32. //添加标记点击监听  
  33. marker.addEventListener("click", function(e){  
  34.    gc.getLocation(e.point, function(rs){  
  35.         showLocationInfo(e.point, rs);  
  36.     });  
  37. });  
  38.   
  39. map.centerAndZoom(point, 15); //设置中心点坐标和地图级别  
  40. map.addOverlay(marker); //将标记添加到地图中  
  41.   
  42. //显示地址信息窗口  
  43. function showLocationInfo(pt, rs){  
  44.     var opts = {  
  45.       width : 250,     //信息窗口宽度  
  46.       height: 100,     //信息窗口高度  
  47.       title : ""  //信息窗口标题  
  48.     }  
  49.       
  50.     var addComp = rs.addressComponents;  
  51.     var addr = "当前位置:" + addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber + "<br/>";  
  52.     addr += "纬度: " + pt.lat + ", " + "经度:" + pt.lng;  
  53.     //alert(addr);  
  54.       
  55.     var infoWindow = new BMap.InfoWindow(addr, opts);  //创建信息窗口对象  
  56.     marker.openInfoWindow(infoWindow);  
  57. }  
  58. </script>  




附:

Class:服务类/Geocoder

Geocoder()

创建一个地址解析器的实例

getLocation(point:Point, callback:function[, options: LocationOptions])

对指定的坐标点进行反向地址解析。如果解析成功,则回调函数的参数为GeocoderResult对象,否则回调函数的参数为null。(自 1.1 新增)

Class:服务类/GeocoderResult

此类表示Geocoder的地址解析结果。它在地址解析的回调函数的参数中返回,不可实例化。

point  坐标点。(自 1.1 新增)

address  地址描述。(自 1.1 新增)

addressComponents  结构化的地址描述。(自 1.1 新增)



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多