源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

百度地图api应用标注地理位置信息(js版)

  • 时间:2022-10-04 22:35 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:百度地图api应用标注地理位置信息(js版)
有时做了一些东西没有记录,而过一段时间再看的时候,有会忘记了。需要在重新在看一遍。 百度地图javascript api可以参考 http://developer.baidu.com/map/reference/  示例:http://developer.baidu.com/map/jsdemo.htm 更多百度地图的介绍http://www.cnblogs.com/milkmap/tag/%E5%9C%B0%E5%9B%BEAPI/    里面介绍的非常详细。 弄了一个百度地图来标注地理位置信息,通过百度api来获取地址。这地图api是javascript版 添加显示显示的div控件
[url=javascript:void(0)]<div class="map_popup" id="cityList" style="display: none;"> <div class="popup_main"> <div class="title"> 城市列表</div> <div class="cityList" id="citylist_container"> </div> <button id="popup_close"> </button> </div> </div> </div> </div>
在引用引用 添加代码
[u]复制代码[/u] 代码如下:
<script type="text/javascript"> var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(117.10, 40.13), 11); map.addControl(new BMap.NavigationControl()); map.addControl(new BMap.ScaleControl()); map.addControl(new BMap.OverviewMapControl()); map.addControl(new BMap.MapTypeControl()); //搜索 document.getElementById("areaSearch").onclick = function () { // 创建地址解析器实例 var myGeo = new BMap.Geocoder(); var searchTxt = document.getElementById("txtarea").value; // 将地址解析结果显示在地图上,并调整地图视野 myGeo.getPoint(searchTxt, function (point) { if (point) { map.centerAndZoom(point, 16); document.getElementById("txtlatitude").value = point.lat; document.getElementById("txtLongitude").value = point.lng; var pointMarker = new BMap.Point(point.lng, point.lat); geocodeSearch(pointMarker); map.addOverlay(new BMap.Marker(point)); } else alert("搜索不到结果"); }, "全国"); } map.enableScrollWheelZoom(); // 创建CityList对象,并放在citylist_container节点内 var myCl = new BMapLib.CityList({ container: "citylist_container", map: map }); // 给城市点击时,添加相关操作 myCl.addEventListener("cityclick", function (e) { // 修改当前城市显示 document.getElementById("curCity").innerHTML = e.name; // 点击后隐藏城市列表 document.getElementById("cityList").style.display = "none"; }); // 给“更换城市”链接添加点击操作 document.getElementById("curCityText").onclick = function () { var cl = document.getElementById("cityList"); if (cl.style.display == "none") { cl.style.display = ""; } else { cl.style.display = "none"; } }; // 给城市列表上的关闭按钮添加点击操作 document.getElementById("popup_close").onclick = function () { var cl = document.getElementById("cityList"); if (cl.style.display == "none") { cl.style.display = ""; } else { cl.style.display = "none"; } }; map.addEventListener("click", function (e) { document.getElementById("txtlatitude").value = e.point.lat; document.getElementById("txtLongitude").value = e.point.lng; map.clearOverlays(); var pointMarker = new BMap.Point(e.point.lng, e.point.lat); // 创建标注的坐标 addMarker(pointMarker); geocodeSearch(pointMarker); }); function addMarker(point) { var myIcon = new BMap.Icon("mk_icon.png", new BMap.Size(21, 25), { offset: new BMap.Size(21, 21), imageOffset: new BMap.Size(0, -21) }); var marker = new BMap.Marker(point, { icon: myIcon }); map.addOverlay(marker); } function geocodeSearch(pt) { var myGeo = new BMap.Geocoder(); myGeo.getLocation(pt, function (rs) { var addComp = rs.addressComponents; document.getElementById("txtAreaCode").value = addComp.province + ", " + addComp.city + ", " + addComp.district; }); } </script>
效果图 [img]http://files.jb51.net/file_images/article/201302/2013020110574826.jpg[/img]  这标注的源码:百度地图标注源码
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部