快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

JS如何实现百度地图搜索悬浮窗功能-创新互联

这篇文章将为大家详细讲解有关JS如何实现百度地图搜索悬浮窗功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

常州网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。成都创新互联公司于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

这个需求的效果类似下面的截图,主要还是利用百度地图中自定义控件的功能,挺简单的。文档地址在这 http://lbsyun.baidu.com/index.php?title=jspopular

效果图:

JS如何实现百度地图搜索悬浮窗功能

代码




 
 
 
  body, html{width: 100%;height: 100%;margin:0;font-family:"微软雅黑";font-size:14px;}
  #l-map{height:300px;width:100%;}
  #r-result{width:100%;}
 
 
 关键字输入提示词条


 
 
 // 百度地图API功能  function G(id) {   return document.getElementById(id);  }  var map = new BMap.Map("l-map");  map.centerAndZoom("北京",10); // 初始化地图,设置城市和地图级别。  // 定义一个控件类,即function  function ZoomControl() {   this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT;   this.defaultOffset = new BMap.Size(10, 10);  }  // 通过JavaScript的prototype属性继承于BMap.Control  ZoomControl.prototype = new BMap.Control();  // 自定义控件必须实现自己的initialize方法,并且将控件的DOM元素返回  // 在本方法中创建个div元素作为控件的容器,并将其添加到地图容器中  ZoomControl.prototype.initialize = function(map){   // 创建一个DOM元素   var div = document.createElement("div");   div.innerHTML = '搜索地址:
';   // 添加DOM元素到地图中   map.getContainer().appendChild(div);   // 将DOM元素返回   return div;  }  // 创建控件  var myZoomCtrl = new ZoomControl();  // 添加到地图当中  map.addControl(myZoomCtrl);  var ac = new BMap.Autocomplete( //建立一个自动完成的对象   {"input" : "suggestId"   ,"location" : map  });  ac.addEventListener("onhighlight", function(e) { //鼠标放在下拉列表上的事件  var str = "";   var _value = e.fromitem.value;   var value = "";   if (e.fromitem.index > -1) {    value = _value.province + _value.city + _value.district + _value.street + _value.business;   }   str = "FromItemindex = " + e.fromitem.index + "value = " + value;   value = "";   if (e.toitem.index > -1) {    _value = e.toitem.value;    value = _value.province + _value.city + _value.district + _value.street + _value.business;   }   str += "ToItemindex = " + e.toitem.index + "value = " + value;   G("searchResultPanel").innerHTML = str;  });  var myValue;  ac.addEventListener("onconfirm", function(e) { //鼠标点击下拉列表后的事件  var _value = e.item.value;   myValue = _value.province + _value.city + _value.district + _value.street + _value.business;   G("searchResultPanel").innerHTML ="onconfirmindex = " + e.item.index + "myValue = " + myValue;   setPlace();  });  function setPlace(){   map.clearOverlays(); //清除地图上所有覆盖物   function myFun(){    var pp = local.getResults().getPoi(0).point; //获取第一个智能搜索的结果    map.centerAndZoom(pp, 14);    map.addOverlay(new BMap.Marker(pp)); //添加标注   }   var local = new BMap.LocalSearch(map, { //智能搜索    onSearchComplete: myFun   });   local.search(myValue);  }

关于“JS如何实现百度地图搜索悬浮窗功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:JS如何实现百度地图搜索悬浮窗功能-创新互联
链接分享:http://6mz.cn/article/deepec.html