百度地图标注 基础篇

蔚落 2021-09-10 05:06 575阅读 0赞
  1. <script type="text/javascript">
  2. var mapObj = new BMap.Map("mapObj"); // 创建地图实例
  3. //向地图中添加缩放控件
  4. var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
  5. mapObj.addControl(ctrl_nav);
  6. mapObj.enableDragging();//启用地图拖拽事件,默认启用(可不写)
  7. mapObj.enableScrollWheelZoom();//启用地图滚轮放大缩小
  8. mapObj.enableDoubleClickZoom();//启用鼠标双击放大,默认启用(可不写)
  9. mapObj.enableKeyboard();//启用键盘上下左右键移动地图
  10. //mapObj.centerAndZoom("<?php echo $defaultcity?>");
  11. if(window.top.$('#<?php echo $field?>').val()) {
  12. drawPoints();
  13. } else {
  14. mapObj.centerAndZoom("<?php echo $defaultcity?>");
  15. }
  16. var localSearch = new BMap.LocalSearch(mapObj);
  17. localSearch.enableAutoViewport(); //允许自动调节窗体大小
  18. function keywordSearch() {
  19. mapObj.clearOverlays();//清空原来的标注
  20. var keyword = document.getElementById("keyword").value;
  21. localSearch.setSearchCompleteCallback(function (searchResult) {
  22. var poi = searchResult.getPoi(0);
  23. // document.getElementById("result_").value = poi.point.lng + "," + poi.point.lat;
  24. mapObj.centerAndZoom(poi.point, 13);
  25. var marker = new BMap.Marker(new BMap.Point(poi.point.lng, poi.point.lat)); // 创建标注,为要查询的地方对应的经纬度
  26. mapObj.addOverlay(marker);
  27. var content = document.getElementById("keyword").value + "<br/><br/>经度:" + poi.point.lng + "<br/>纬度:" + poi.point.lat;
  28. var infoWindow = new BMap.InfoWindow("<p style='font-size:14px;'>" + content + "</p>");
  29. marker.addEventListener("click", function () { this.openInfoWindow(infoWindow); });
  30. // marker.setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画
  31. });
  32. localSearch.search(keyword);
  33. }
  34. function drawPoints(){
  35. var data = window.top.$('#<?php echo $field?>').val();
  36. var data = data.split('|');
  37. var lngX = data[0];
  38. var latY = data[1];
  39. var zoom = data[2] ? data[2] : 10;
  40. mapObj.centerAndZoom(new BMap.Point(lngX,latY),zoom);
  41. // 创建图标对象
  42. var myIcon = new BMap.Icon('<?php echo IMG_PATH ?>icon/mak.png', new BMap.Size(27, 45));
  43. // 创建标注对象并添加到地图
  44. var center = mapObj.getCenter();
  45. var point = new BMap.Point(lngX,latY);
  46. var marker = new BMap.Marker(point, {icon: myIcon});
  47. marker.enableDragging();
  48. mapObj.addOverlay(marker);
  49. var ZoomLevel = mapObj.getZoom();
  50. marker.addEventListener("dragend", function(e){
  51. window.top.$('#<?php echo $field?>').val(e.point.lng+'|'+e.point.lat+'|'+ZoomLevel);
  52. })
  53. }
  54. function addMarker(){
  55. mapObj.clearOverlays();
  56. // 创建图标对象
  57. var myIcon = new BMap.Icon('<?php echo IMG_PATH ?>icon/mak.png', new BMap.Size(27, 45));
  58. // 创建标注对象并添加到地图
  59. var center = mapObj.getCenter();
  60. var point = new BMap.Point(center.lng,center.lat);
  61. var marker = new BMap.Marker(point, {icon: myIcon});
  62. marker.enableDragging();
  63. mapObj.addOverlay(marker);
  64. var ZoomLevel = mapObj.getZoom();
  65. window.top.$('#<?php echo $field?>').val(center.lng+'|'+center.lat+'|'+ZoomLevel);
  66. marker.addEventListener("dragend", function(e){
  67. window.top.$('#<?php echo $field?>').val(e.point.lng+'|'+e.point.lat+'|'+ZoomLevel);
  68. })
  69. }
  70. function mapClose(){
  71. var CityBox=$(".CityBox");
  72. if(CityBox.css('display')=='none'){
  73. CityBox.show();
  74. }else{
  75. CityBox.hide();
  76. }
  77. }
  78. function removeMarker() {
  79. mapObj.clearOverlays();
  80. mapObj.centerAndZoom("<?php echo $defaultcity?>");
  81. $("#curCity").html('<?php echo $defaultcity?>');
  82. window.top.$('#<?php echo $field?>').val('');
  83. }
  84. </script>

发表评论

表情:
评论列表 (有 0 条评论,575人围观)

还没有评论,来说两句吧...

相关阅读