HTML5的地理定位怎样运用-
地理位置(Geolocation)是 HTML5 的重要特性之一,供给了肯定会员位置的功能,借助这个特机能够开发基于位置信息的利用。今天这篇文章向大家介绍一下 HTML5 地理位置定位的根本道理及各个阅读器的数据精度状况。
在拜访位置信息前,阅读器都会扣问会员可否同享其位置信息,以 Chrome 阅读器为例,要是您允许 Chrome 阅读器与网站同享您的位置,Chrome 阅读器会向 Google 位置办事发送当地网络信息,预计您所在的位置。然后,阅读器会与要求运用您位置的网站同享您的位置。
HTML5 Geolocation API 运用非常简略,根本调取方式如下:
if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(locationSuccess, locationError,{ // 指挥阅读器猎取高精度的位置,默许为false enableHighAccuracy: true, // 指定猎取地理位置的超不时间,默许不限时,单位为毫秒 timeout: 5000, // 最长有效期,在反复猎取地理位置时,此参数指定多久再次猎取位置。 maximumAge: 3000 }); }else{ alert("Your browser does not support Geolocation!"); }
locationError为猎取位置信息失败的回调函数,可以依据差错类型提醒信息:
locationError: function(error){ switch(error.code) { case error.TIMEOUT: showError("A timeout occured! Please try again!"); break; case error.POSITION_UNAVAILABLE: showError('We can\'t detect your location. Sorry!'); break; case error.PERMISSION_DENIED: showError('Please allow geolocation access for this to work.'); break; case error.UNKNOWN_ERROR: showError('An unknown error occured!'); break; } }
locationSuccess为猎取位置信息成功的回调函数,返回的数据中包括经纬度等信息,联合Google Map API 即可在地图中显示目前会员的位置信息,如下:
locationSuccess: function(position){ var coords = position.coords; var latlng = new google.maps.LatLng( // 维度 coords.latitude, // 精度 coords.longitude ); var myOptions = { // 地图放大倍数 zoom: 12, // 地图核心设为指定坐标点 center: latlng, // 地图类型 mapTypeId: google.maps.MapTypeId.ROADMAP }; // 新建地图并输出到页面 var myMap = new google.maps.Map( document.getElementById("map"),myOptions ); // 新建标志 var marker = new google.maps.Marker({ // 标注指定的经纬度坐标点 position: latlng, // 指定用于标注的地图 map: myMap }); //新建标注窗口 var infowindow = new google.maps.InfoWindow({ content:"您在这里
纬度:"+ coords.latitude+ "
经度:"+coords.longitude }); //打开标注窗口 infowindow.open(myMap,marker); }
经过测试,Chrome/Firefox/Safari/Opera四个阅读器猎取到的位置信息都是一摸同样的,预计都是用的统一个位置办事,数据如下:
indexeddb数据库的运用详解
以上就是HTML5的地理定位怎样运用的细致内容,更多请关注 百分百源码网 其它相干文章!