免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2638 | 回复: 1
打印 上一主题 下一主题

html5+js获取物理地址并显示在goole地图 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-05 16:59 |只看该作者 |倒序浏览
html5+js获取物理地址并显示在goole地图
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">  
  3.     <head>  
  4.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  5.         <title>html5获取地理位置并显示在goole地图</title>  
  6.     </head>  
  7.     <body>  
  8.         <input type="button" id="getPos" value="获取我的位置">  
  9.         <div id="info" class="">  
  10.             您所在的位置: 经度  
  11.             <span class="tip">unknown</span>,纬度  
  12.             <span class="tip">unknown</span>  
  13.         </div>  
  14.   
  15.   
  16.   <script src="http://www.google.cn/maps?file=api&amp;v=2&amp;key=ABQIAAAAzr2EBOXUKnm_jVnk0OJI7xSosDVG8KKPE1-m51RBrvYughuyMxQ-i1QfUnH94QxWIa6N4U6MouMmBA&hl=zh-CN"
  17.            type="text/javascript">
  18.    
  19. </script>
  20.   
  21.         <script type="text/javascript">  
  22.             var t = 0;  
  23.             var dom = {  
  24.                 btn : document.getElementById('getPos'),  
  25.                 info : document.getElementById('info')  
  26.             };  
  27.   
  28.             dom.btn.onclick = function(){  
  29.                 if (navigator.geolocation) {  
  30.                     dom.info.innerHTML = "请等待查询结果返回";  
  31.                     dom.info.className = "warn";  
  32.                     navigator.geolocation.getCurrentPosition(getPositionSuccess,getPositionError,{timeout:5000});  
  33.                 }else {  
  34.                      dom.info.innerHTML = "抱歉,您所使用的浏览器不支持 Geolocation 接口";  
  35.                      dom.info.className = "warn";  
  36.                 }  
  37.             }  
  38.               
  39.               
  40.             function getPositionSuccess(position){  
  41.                 var lat = position.coords.latitude;  
  42.                 var lng = position.coords.longitude;  
  43.                 dom.info.innerHTML = "您所在的位置: 经度" + lat + ",纬度" + lng;  
  44.                   
  45.                   
  46.                 if(typeof position.address === "undefined"){  
  47.                     dom.info.innerHTML += "<br /><span class='tip'>您的浏览器目前仅提供坐标查询,使用 Firefox 3.5+ 可获得更多信息</span>";  
  48.                 }else{  
  49.                     dom.info.innerHTML += "<br /><span class='tip'>" + position.address.country + " , " + position.address.region + " , " + position.address.city+"</span>";  
  50.                 }  
  51.    
  52.     goolemap(position);
  53.       
  54.             }  
  55.               
  56.             function goolemap(position) {
  57.     if (GBrowserIsCompatible()) {
  58.      var map = new GMap2(document.getElementById("map_canvas"));
  59.      
  60.      var center = new GLatLng(position.coords.latitude,position.coords.longitude);
  61.      
  62.      map.setCenter(center, 14);

  63.      
  64.      map.addControl(new GSmallMapControl());
  65.      map.addControl(new GMapTypeControl());
  66.      
  67.      var marker = new GMarker(center, {draggable: false});
  68.      marker.openInfoWindowHtml("公司所在地" + position.coords.latitude + "    " +  position.coords.longitude + "    " + map.getZoom());
  69.         map.addOverlay(marker);
  70.     }
  71.    }
  72.             
  73.             function getPositionError(error){  
  74.                 switch(error.code){  
  75.                     case error.TIMEOUT :  
  76.                         dom.info.innerHTML = "连接超时,请重试";  
  77.                         break;  
  78.                     case error.PERMISSION_DENIED :  
  79.                         dom.info.innerHTML = "您拒绝了使用位置共享服务,查询已取消";  
  80.                         break;  
  81.                     case error.POSITION_UNAVAILABLE :   
  82.                         dom.info.innerHTML = "亲爱的火星网友,非常抱歉<br />我们暂时无法为您所在的星球提供位置服务";  
  83.                         break;  
  84.                 }  
  85.             }  
  86.               
  87.         </script>  
  88.   
  89.   
  90.   <div id="map_canvas" style="width: 800px; height: 400px"></div>
  91.   
  92.     </body>  
  93. </html>  
复制代码
参考网上的html5获取物理地址的实例,添加js显示在goole地图上,但是差距好像很大...

论坛徽章:
0
2 [报告]
发表于 2011-12-24 21:06 |只看该作者
谢谢分享  希望于楼主多多交流
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP