HTML5地理位置与LBS应用开发的方法

这篇文章主要介绍“HTML5地理位置与LBS应用开发的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“HTML5地理位置与LBS应用开发的方法”文章能帮助大家解决问题。

香洲网站建设公司创新互联,香洲网站设计制作,有大型网站制作公司丰富经验。已为香洲数千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的香洲做网站的公司定做!

1. LBS应用开发示例

在5年前,我们不敢想象会有如此众多的供应商提供免费的电子地图服务,而现在,开发者拥有众多选择:阿里云电子地图,百度电子地图,新浪电子地图,谷歌电子地图等。这里我们演示的是阿里云电子地图。

下面表示一个典型的LBS服务,通过GPS,Wi-Fi或其他方式查找设备所在的位置信息,通过此信息,在方圆1000米的范围内查找所有的酒店,总共前10个酒店显示在地图上。

具体示例代码如下所示。

 

  定位功能</ title></p><p>  <meta  http-equiv = “ pragma“  content = ” no-cache“  /></p><p>  <meta  name = ” viewport“  content = ”宽度=设备宽度,高度=设备高度,初始比例= 1.0,最小比例= 1.0,最大比例= 1.0 ,user-scalable = no“  /></p><p>  <link  href = ” opera.css“  rel = ”stylesheet“  type = ” text / css“ /></p><p>  <script  src = “ http://api.ditu.aliyun.com/map.js”  type = “ text / javascript” ></p><p></ script> <!-上面提到的是阿里云地图-></p><p>  <脚本 类型= “ text / javascript”  charset = “ utf-8”  src = “ foropera.js” ></p><p></ script></p><p></ head></p><p><body></p><p>  <div  id = “ divLayer” 样式= “ background-color:#333 ; font-size:20px; color:#FFF; margin-top:200px; margin -left:0px; text-align:center; height:40px; line-height:40px;“ ></p><p>   = “ helpme” 样式= “不透明度:0.9;位置:绝对; z-index:1000;顶部:100px;左侧:20px;显示:无;背景颜色:#333; -webkit-border-radius:15px;右侧:20px;“ ></p><p>    <center  style = “ margin-left:10px; margin-right:10px; border-bottom:1px#777 solid;” ></p><p>      <span  style = “ color:#fff; height:30px; line-height:60px; font-size:26px;” >定位功能</ span></p><p>    </ center></p><p>    <div  style = “ color:#ccc; font-size:18px; margin-left:20px; margin-right:20px; margin-top:16px;” ></p><p>    </ div> <br  /></p><p>    <center></p><p>      <button  onclick = “ hiddeDiv('helpme')”“  style = ” opacity:1; background-color:#777; border:0px; height:35px; line-height:25px ; color:#eee; width:140px; font-size:18px; -webkit-border-radius:5px;“ >关闭提示</ button></p><p>    </ center> <br  /></p><p>  </ div></p><p>  <div  id = “ help”  style = “ z-index:1000; position:absolute; left:0px; top:30px;” > </ div> <script  type = “ text / javascript” ></p><p>// <!</p><p>'helpme')。样式.display = 'none' ;</p><p>  }</p><p>  函数showhelp(){</p><p>  document.getElementById('helpme')。样式.display = '' ;</p><p>  }</p><p>  // ]] ></p><p>  </ script></p><p>  <div  id = “ mapDiv”  style = “ width:480px; height:800px” > </ div></p><p>  <div  id = “ lsResultDiv” > </ div> <script  type = “ text / javascript“ ></p><p>// <![CDATA [</p><p>  $('+ window.innerWidth + “ px; height:” + window.innerHeight + “</p><p>  px ”;</p><p>  function func_control(){</p><p>  alert('此处可以定制为某项功能');</p><p>  }</p><p>  Jla.require(“ Ali.Map.MapType.AliMobile”); //加载手机地图的功能</p><p>  Jla.onReady(onLoad);</p><p>  函数onLoad(){</p><p>  $('divLayer')。style.top =((window.innerHeight / 2)-20)+ “ px” ;</p><p>  $('divLayer').style.left =((window.innerWidth / 2)-150)+ “ px” ;</p><p>  $('divLayer').style。</p><p>  $('divLayer').innerHTML = '正在加载地图......' ;</p><p>  var hasGeolocation = !!(navigator.geolocation);</p><p>  if(!hasGeolocation){</p><p>  alert(“浏览器不支持Geolocation”);</p><p>  }</p><p>  var map,markers = [];</p><p>  var map = new AliMap(“ mapDiv”); //使用id为mapDiv的层创建一个地图对象</p><p>  AliEvent.addListener(map,  “ click”,function(){ //监听事件</p><p>  alert(“有人放置了地图。”);</p><p>  });</p><p>  localStorage.wd = “ 0” ; //如果没有获取到任何地理坐标,则直接替换为0</p><p>  localStorage.jd = “ 0” ;如果没有获取到任何地理坐标,则</p><p>  直接替换为0 showmap(localStorage.wd,localStorage.jd,localStorage.cx); //展示地图</p><p>  var geolocationOptions = {timeout:30000,enableHighAccuracy:true,maximumAge:5000};</p><p>  $('divLayer').innerHTML = '正在获取坐标......' ;</p><p>  navigator.geolocation.getCurrentPosition(geolocationSuccess,geolocationError,</p><p>  geolocationOptions);</p><p>  function geolocationSuccess(position){</p><p>  alert(“北纬:” + position.coords.latitude + “,东经:” + position.coords.longitude);</p><p>  //打开当前的经纬度坐标</p><p>  localStorage.wd = position.coords.latitude;</p><p>  localStorage.jd = position.coords.longitude;</p><p>  localStorage.cx = position.coords.heading;</p><p>  showmap(localStorage.wd,localStorage.jd,localStorage.cx); //展示地图</p><p>  }</p><p>  setInterval(function(){</p><p>  //每隔20秒重新刷新地图</p><p>  showmap(localStorage.wd,localStorage.jd,localStorage.cx);</p><p>  },20000);</p><p>  function geolocationError(err){</p><p>  switch(err.code){</p><p>  case 1:</p><p>  $('divLayer').innerHTML = '坐标获取被拒绝,地图加载失败' ;</p><p>  休息;</p><p>  情况2:</p><p>  $('divLayer')。innerHTML = '连不上GPS卫星或网络断了' ;</p><p>  休息;</p><p>  情况3:</p><p>  $('divLayer').innerHTML = ';</p><p>  休息;</p><p>  默认值:</p><p>  $('divLayer').innerHTML = '发生严重异常,请刷新页面' ;</p><p>  休息;</p><p>  }</p><p>  }</p><p>  函数showmap(wd,jd,cx){</p><p>  $('divLayer').innerHTML = '正在展示数据......' ;</p><p>  //在该坐标处创建一个标记</p><p>  var MAPMAP = new AliLatLng(localStorage.wd,localStorage.jd);</p><p>  if(cx === null){</p><p>  alert('对不起,取不到当前朝向');</p><p>  }</p><p>  yycontrol = new AliMapOverviewControl({open:true}); //创建一个鹰眼控件</p><p>  map.addControl(yycontrol); //将鹰眼控件添加到地图</p><p>  //设置调用的地图类型为手机版地图</p><p>  map.setMapType(new(Jla.get(“ Ali.Map.MapType.AliMobile”))());</p><p>  map.centerAndZoom(MAPMAP,14); //定位地图</p><p>  search =新的AliLocalSearch(); //设置搜索结果处理函数</p><p>  AliEvent.addListener(search,“ searchcomplete”,onSearchComplete);</p><p>  AliEvent.addListener(search,“ searchexception ”,onSearchException);</p><p>  var search_keyword = “酒店” ;</p><p>  var search_radius = 1000; //搜索</p><p>  国会是1000米search.keyword = search_keyword; //设置关键字</p><p>  search.pageSize = 10; //设置返回结果数量</p><p>  search.center = map.getCenter();</p><p>  search.execute(); //开始搜索</p><p>  marker = new AliMarker(MAPMAP); //将标记添加到地图</p><p>  //创建事件监视器,在MapMove函数</p><p>  map.openInfoWindow(MAPMAP,'我的位置','<div>附近的蓝点,是方圆</p><p>  '+ search_radius +'米内的'+ search_keyword +' < \ / div> ');</p><p>  var icons = [</p><p>  newAliIcon(“ icon1.gif”,{x:16,y:27},{x:8,y:27}),</p><p>  newAliIcon(“ icon2.png”,{x:23,y:29} ,{x:13,y:14}),</p><p>  newAliIcon(“ icon3.png”,{x:49,y:59},{x:24,y:56})</p><p>  ]];</p><p>  marker.setIcon(icons [1]);</p><p>  map.addOverlay(marker);</p><p>  椭圆形=新</p><p>  AliOvalOverlay(map.getProjection()。getSquare(MAPMAP,search_</p><p>  radius),{editSymbolCtl:128}); //以中心为中心,3000米为直径的圆</p><p>  map.addOverlay(oval);</p><p>  椭圆形。开始编辑({keepRatio:true});</p><p>  椭圆形.endEditting({keepRatio:true});</p><p>  函数onSearchException(exception){</p><p>  alert(exception.message);</p><p>  }</p><p>  函数onSearchComplete(){  //处理搜索结果</p><p>  变量标记,resultDiv = document.getElementById(“ lsResultDiv”);</p><p>  AliEvent.deposeNode(resultDiv,true);</p><p>  while(marker = markers.pop()){</p><p>  map.removeOverlay(marker);</p><p>  }</p><p>  for(var i = 0; i < search.points.length; i++){</p><p>  var  poi = search.points [ i ];</p><p>  标记=新AliMarker(poi.latlng,{标题:POI名称});</p><p>  映射.addOverlay(marker);</p><p>  //将标记的信息浮窗内容记录下来</p><p>  marker._desc = “我是第” +(i + 1)+ “个” + search_keyword;</p><p>  AliEvent.bind(marker,  “ click”  ,marker,onMarkerclick);</p><p>  markers.push(marker);</p><p>  }</p><p>  }</p><p>  函数onMarkerclick(){</p><p>  //确保信息浮窗在视图范围内</p><p>  无功 infowin = this.openInfoWindow(此。标题,this._desc);</p><p>  infowin.moveIntoView();</p><p>  }</p><p>  $('divLayer').innerHTML = “” ;</p><p>  $('divLayer')。样式.top = “ 0px” ;</p><p>  $('divLayer')。样式.left = “ 0px” ;</p><p>  $('divLayer')。风格。width = “ 0px” ;</p><p>  $('divLayer')。样式.display = 'none' ;</p><p>  }</p><p>  }</p><p>  // ]] ></p><p>  </ script></p><p></ body></p><p>关于“HTML5地理位置与LBS应用开发的方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联行业资讯频道,小编每天都会为大家更新不同的知识点。</p> <br> 当前名称:HTML5地理位置与LBS应用开发的方法 <br> 链接地址:<a href="http://scjbc.cn/article/gphhhs.html">http://scjbc.cn/article/gphhhs.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/dseecce.html">c语言函数形参带什么意思,C语言形参是什么</a> </li><li> <a href="/article/dseecsd.html">包含c向sqlserver的词条</a> </li><li> <a href="/article/dseecsh.html">androidgps,AndroidGPStest</a> </li><li> <a href="/article/dseecss.html">javascript换色,js换背景颜色</a> </li><li> <a href="/article/dseeceo.html">如何查看oracle参数,oracle查看参数文件位置</a> </li> </ul> </div> </div> <div class="footer"> <div class="contain"> <div class="foot-nav clearfix"> <ul class="footer-menu"> <li class="dropdown" ><a class="dropdown-toggle">服务范围<b class="caret"></b></a> <ul class="child-menu"> <li><a href="/website.html">网站建设</a></li> <li><a href="/weixin/" rel="nofollow">微信开发</a></li> <li><a href="/app/" rel="nofollow">APP开发</a></li> <li><a href="/design/" rel="nofollow">品牌设计</a></li> <li><a href="/market/" rel="nofollow">营销推广</a></li> </ul> </li> <li class="dropdown"><a href="/webcase/" class="dropdown-toggle" title=成都做网站案例>成都做网站案例<b class="caret"></b></a> <ul class="child-menu"> <li><a href="/webcase/jtssgslist.html" id="ctl00_show_85" title="集团上市公司">集团上市公司</a></li> <li><a href="/webcase/ppwzlist.html" id="ctl01_show_81" title="品牌网站">品牌网站</a></li> <li><a href="/webcase/xiangyingshilist.html" id="ctl02_show_82" title="响应式网站">响应式网站</a></li> <li><a href="/Marketingwebsite/index.html" id="ctl03_show_83" title="营销型网站">营销型网站</a></li> <li><a href="/waimaowangzhan/index.html" id="ctl04_show_84" title="外贸网站">外贸网站</a></li> </ul> </li> <li class="dropdown"><a href="/news/" class="dropdown-toggle">新闻中心 <b class="caret"></b></a> <ul class="child-menu"> <li><a href="/news/2.html" id="ctl00_show_70" title="网站建设">网站建设</a></li><li><a href="/news/3.html" id="ctl00_show_70" title="网站设计">网站设计</a></li><li><a href="/news/5.html" id="ctl00_show_70" title="网站制作">网站制作</a></li><li><a href="/news/6.html" id="ctl00_show_70" title="网站优化">网站优化</a></li> </ul> </li> <li class="dropdown"><a href="/Knowledge/" class="dropdown-toggle">知识学堂 <b class="caret"></b></a> <ul class="child-menu"> <li><a href="/websitelist/8.html" title="网站建设知识">网站建设知识</a></li><li><a href="/websitelist/9.html" title="网站设计知识">网站设计知识</a></li><li><a href="/websitelist/10.html" title="微信营销知识">微信营销知识</a></li><li><a href="/websitelist/11.html" title="营销推广知识">营销推广知识</a></li> </ul> </li> <li class="dropdown"><a href="/about/" class="dropdown-toggle" rel="nofollow">关于我们 <b class="caret"></b></a> <ul class="child-menu"> <li><a href="/about/jj/index.html" id="ctl00_show_1300" title="公司简介" rel="nofollow">公司简介</a></li> <li><a href="/about/history/index.html" id="ctl01_show_1301" title="发展历史" rel="nofollow">发展历史</a></li> <li><a href="/about/jjtd/index.html" id="ctl02_show_1302" title="精英团队" rel="nofollow">精英团队</a></li> <li><a href="/about/join/" rel="nofollow">加入我们</a></li> <li><a href="/about/contact/" rel="nofollow">联系小谭</a></li> </ul> </li> </ul> <dl class="last-dl"> <dt> <a href="javascript:;" title="联系我们" rel="nofollow">联系小谭</a> </dt> <dd class="conta"> <span><img src="/Public/Home/images/zg_ewm.png" width="100" /><br /> 企业微信号</span> </dd> </dl> </div> <div class="childcompan clearfix"> </div> <div class="copy"> 友情链接: <a href="http://www.cdymzj.com/" title="网站空间" target="_blank">网站空间</a>   <a href="http://www.gyjike.cn/" title="川银永信" target="_blank">川银永信</a>   <a href="http://m.cdxwcx.com/weixin.html" title="成都微信公众号开发" target="_blank">成都微信公众号开发</a>   <a href="http://www.cdmuye.cn/" title="乐尚佳花箱" target="_blank">乐尚佳花箱</a>   <a href="http://mc.scmwjz.com/" title="不锈钢防护栏" target="_blank">不锈钢防护栏</a>   <a href="https://www.cdxwcx.com/jifang/zongshu.html" title="棕树数据中心" target="_blank">棕树数据中心</a>   <a href="http://www.scxuyong.com/" title="叙永网站建设" target="_blank">叙永网站建设</a>   <a href="http://www.cqcxhl.com/jianzhan/" title="重庆建站" target="_blank">重庆建站</a>   <a href="http://www.ybwzjz.com/" title="宜宾网站设计" target="_blank">宜宾网站设计</a>   <a href="http://www.lbtjx.cn/" title="力比特机械" target="_blank">力比特机械</a>    </div> <br> 123ABC<strong> <a href="/">成都网站建设</a></strong>,成都定制网站建设——全心全意建网站公司 </div> </div> <script type="text/javascript" src="/Public/Home/js/meiqia.js"></script> <script type="text/javascript" src="/Public/Home/js/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="/Public/Home/js/jquery.easing.1.3.js"></script> <script type="text/javascript" src="/Public/Home/js/i.js"></script> <script type="text/javascript" src="/Public/Home/js/script.js"></script> <script type="text/javascript" src="/Public/Home/js/SuperSlide.js"></script> <script type="text/javascript" src="/Public/Home/js/jquery.toTop.min.js"></script> <script type="text/javascript" src="/Public/Home/js/num-change.js"></script> <script type="text/javascript" src="/Public/Home/js/jquery.nicescroll.min.js"></script> <script type="text/javascript"> $(".menu li").eq(7).addClass("current-menu-item"); </script> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>