网站开发 百度地图的添加 (自定义地址)

本文介绍如何使用百度地图API在网页上实现地图显示功能,包括获取地理位置的经纬度、创建地图、设置地图事件及添加控件等关键步骤。
1,在控制地图的页面添加如下代码:

点击(此处)折叠或打开

  1.     <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>
  2.     <script type="text/javascript" src="http://api.map.baidu.com/api?key=&v=1.3&services=true"></script>
  3.     <script language="JavaScript" type="text/javascript">
  4.     /*得到地址的经纬度*/
  5.     function point(ygh_city,ygh_adress){
  6.             document.getElementById('dituContent').style.display='block'; //显示地图
  7.             document.getElementById('othersContent').style.display='none'; //隐藏其他内容
  8.             var myGeo = new BMap.Geocoder();
  9.             myGeo.getPoint(ygh_adress, function(point){
  10.                     if (point) {
  11.                             initMap(point.lng,point.lat);//创建和初始化地图
  12.                     } else {
  13.                             alert("地址出错");
  14.                     }
  15.             }, ygh_city);
  16.     }
  17.     </script>

  18.     /*根据地址的经纬度创建地图*/
  19.     <script type="text/javascript">
  20.         //创建和初始化地图函数:
  21.         function initMap(a,b){
  22.             createMap(a,b);//创建地图
  23.             setMapEvent();//设置地图事件
  24.             addMapControl();//向地图添加控件
  25.         }
  26.         
  27.         //创建地图函数:
  28.         function createMap(a,b){
  29.             var map = new BMap.Map("dituContent");//在百度地图容器中创建一个地图
  30.             var point = new BMap.Point(a,b);//定义一个中心点坐标
  31.             map.centerAndZoom(point,18);//设定地图的中心点和坐标并将地图显示在地图容器中
  32.             window.map = map;//将map变量存储在全局
  33.               var marker = new BMap.Marker(point);
  34.                                //创建信息窗口
  35.             var opts = {
  36.                  width : 250, // 信息窗口宽度
  37.                  height: 100, // 信息窗口高度
  38.                  title : "地址" // 信息窗口标题
  39.            }
  40.             var infoWindow = new BMap.InfoWindow("这里是地址,可拖动至其他位置,放大查看其详细地址", opts); // 创建信息窗口对象
  41.             map.addOverlay(marker);
  42.             marker.enableDragging();
  43.             marker.addEventListener("click",function(){
  44.                map.openInfoWindow(infoWindow, map.getCenter()); // 打开信息窗口
  45.                     });
  46.         }

  47.         
  48.         //地图事件设置函数:
  49.         function setMapEvent(){
  50.             map.enableDragging();//启用地图拖拽事件,默认启用(可不写)
  51.             map.enableScrollWheelZoom();//启用地图滚轮放大缩小
  52.             map.enableDoubleClickZoom();//启用鼠标双击放大,默认启用(可不写)
  53.             map.enableKeyboard();//启用键盘上下左右键移动地图
  54.         }
  55.         
  56.         //地图控件添加函数:
  57.         function addMapControl(){
  58.             //向地图中添加缩放控件
  59.         var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
  60.         map.addControl(ctrl_nav);
  61.             //向地图中添加缩略图控件
  62.         var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:1});
  63.         map.addControl(ctrl_ove);
  64.             //向地图中添加比例尺控件
  65.         var ctrl_sca = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
  66.         map.addControl(ctrl_sca);
  67.         }
  68.           
  69.     </script>
  70. <p><a href="javascript:point('河南省平顶山市','宝丰县样庄镇','coordinates');">查看电子地图</a></p>
2.在需要显示地图的页面添加如下代码:

点击(此处)折叠或打开

  1. <div style="width:800px;height:600px;border:#ccc solid 1px;display:none;" id="dituContent"></div>
  2.     <div id="goodsContent">
  3.       这里放其他内容






<script>window._bd_share_config={"common":{"bdsnskey":{},"bdtext":"","bdmini":"2","bdminilist":false,"bdpic":"","bdstyle":"0","bdsize":"16"},"share":{}};with(document)0[(getelementsbytagname('head')[0]||body).appendchild(createelement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new date()/36e5)];</script>
阅读(327) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值