基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)


Posted in Javascript onDecember 29, 2015

废话不多说了,直接给大家贴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) {
    //浏览器支持geolocation
    navigator.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号),希望大家喜欢。

Javascript 相关文章推荐
HTML中不支持静态Expando的元素的问题
Mar 08 Javascript
input 高级限制级用法
Mar 26 Javascript
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
Nov 27 Javascript
重写javascript中window.confirm的行为
Oct 21 Javascript
前端程序员必须知道的高性能Javascript知识
Aug 24 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
Oct 23 Javascript
JS实现的ajax和同源策略(实例讲解)
Dec 01 Javascript
关于HTML5的data-*自定义属性的总结
May 05 Javascript
Vue.js中该如何自己维护路由跳转记录
May 19 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
Feb 09 Javascript
React组件设计模式之组合组件应用实例分析
Apr 29 Javascript
jQuery实现查看图片功能
Dec 01 jQuery
jQuery中attr()与prop()函数用法实例详解(附用法区别)
Dec 29 #Javascript
使用OpenLayers3 添加地图鼠标右键菜单
Dec 29 #Javascript
javascript实现下拉提示选择框
Dec 29 #Javascript
基于JavaScript如何实现ajax调用后台定义的方法
Dec 29 #Javascript
js+css简单实现网页换肤效果
Dec 29 #Javascript
Jquery使用小技巧汇总
Dec 29 #Javascript
js为什么不能正确处理小数运算?
Dec 29 #Javascript
You might like
一个程序下载的管理程序(四)
2006/10/09 PHP
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
php+html5基于websocket实现聊天室的方法
2015/07/17 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
多浏览器兼容的获取元素和鼠标的位置的js代码
2009/12/15 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
2012/04/14 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
2013/04/02 Javascript
Jquery显示、隐藏元素以及添加删除样式
2013/08/09 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
jQuery Position方法使用和兼容性
2017/08/23 jQuery
Node.js实现连接mysql数据库功能示例
2017/09/15 Javascript
jquery获取transform里的值实现方法
2017/12/12 jQuery
node.js博客项目开发手记
2018/03/16 Javascript
angular4笔记系列之内置指令小结
2018/11/09 Javascript
vue路由分文件拆分管理详解
2020/08/13 Javascript
解决Vue-cli3没有vue.config.js文件夹及配置vue项目域名的问题
2020/12/04 Vue.js
python端口扫描系统实现方法
2014/11/19 Python
Python使用logging结合decorator模式实现优化日志输出的方法
2016/04/16 Python
一些常用的Python爬虫技巧汇总
2016/09/28 Python
Python数据操作方法封装类实例
2017/06/23 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
使用Python AIML搭建聊天机器人的方法示例
2018/07/09 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
Python实现账号密码输错三次即锁定功能简单示例
2019/03/29 Python
css3个性化字体_动力节点Java学院整理
2017/07/12 HTML / CSS
Bath & Body Works阿联酋:在线购买沐浴和身体用品
2021/02/27 全球购物
幼儿园教师岗位职责
2014/03/17 职场文书
《从现在开始》教学反思
2014/04/15 职场文书
捐书活动总结
2014/05/04 职场文书
七夕相亲活动策划方案
2014/08/31 职场文书
2015年度环卫处工作总结
2015/07/24 职场文书
解决Nginx 配置 proxy_pass 后 返回404问题
2021/03/31 Servers
总结一些Java常用的加密算法
2021/06/11 Java/Android