Welcome 微信登录

首页 / 脚本样式 / JavaScript / 基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)

废话不多说了,直接给大家贴js代码了。具体代码如下所示:
function Location(){};Location.prototype.getLocation = function(callback){var options = {enableHighAccuracy: true,maximumAge: 1000};this.callback = Object.prototype.toString.call(callback) =="[object Function]" ?callback : function(address){alert(address.province + address.city);console.log("getocation(callbackFunction) 可获得定位信息对象");};var self = this;if (navigator.geolocation) {//浏览器支持geolocationnavigator.geolocation.getCurrentPosition(function(position){//经度var longitude = position.coords.longitude;//纬度var latitude = position.coords.latitude;self.loadMapApi(longitude,latitude);}, self.onError, options);} else {//浏览器不支持geolocation}};Location.prototype.loadMapApi = function(longitude, latitude){var self = this;var oHead = document.getElementsByTagName("HEAD").item(0);var oScript= document.createElement("script");oScript.type = "text/javascript";oScript.src="http://api.map.baidu.com/getscript?v=2.0&ak=A396783ee700cfdb9ba1df281ce36862&services=&t=20140930184510";oHead.appendChild(oScript);oScript.onload = function(date){var point = new BMap.Point(longitude, latitude);var gc = new BMap.Geocoder();gc.getLocation(point, function(rs) {var addComp = rs.addressComponents;self.callback(addComp);});}};Location.prototype.onError = function(error) {switch (error.code) {case 1:alert("位置服务被拒绝");break;case 2:alert("暂时获取不到位置信息");break;case 3:alert("获取信息超时");break;case 4:alert("未知错误");break;}};//调用var local = new Location();local.getLocation(function(res){//此处就是返回的地理位置信息console.log(res);})
以上内容是小逼给大家介绍的基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号),希望大家喜欢。