189 8069 5689

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

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

创新互联公司主营怀远网站建设的网络公司,主营网站建设方案,APP应用开发,怀远h5小程序设计搭建,怀远网站营销推广欢迎怀远等地区企业咨询

这个需求的效果类似下面的截图,主要还是利用百度地图中自定义控件的功能,挺简单的。文档地址在这 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如何实现百度地图搜索悬浮窗功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


本文名称:JS如何实现百度地图搜索悬浮窗功能
文章地址:http://cdxtjz.cn/article/ppjdhi.html

联系我们

您好HELLO!
感谢您来到成都网站建设公司,若您有合作意向,请您为我们留言或使用以下方式联系我们, 我们将尽快给你回复,并为您提供真诚的设计服务,谢谢。
  • 电话:028- 86922220 18980695689
  • 商务合作邮箱:631063699@qq.com
  • 合作QQ: 532337155
  • 成都网站设计地址:成都市青羊区锣锅巷31号五金站写字楼6楼

小谭建站工作室

成都小谭网站建设公司拥有多年以上互联网从业经验的团队,始终保持务实的风格,以"帮助客户成功"为已任,专注于提供对客户有价值的服务。 我们已为众企业及上市公司提供专业的网站建设服务。我们不只是一家网站建设的网络公司;我们对营销、技术、管理都有自己独特见解,小谭建站采取“创意+综合+营销”一体化的方式为您提供更专业的服务!

小谭观点

相对传统的成都网站建设公司而言,小谭是互联网中的网站品牌策划,我们精于企业品牌与互联网相结合的整体战略服务。
我们始终认为,网站必须注入企业基因,真正使网站成为企业vi的一部分,让整个网站品牌策划体系变的深入而持久。