基于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 相关文章推荐
对xmlHttp对象的理解
Jan 17 Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
Mar 06 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
Apr 08 Javascript
vue.js 初体验之Chrome 插件开发实录
May 13 Javascript
Vue中的数据监听和数据交互案例解析
Jul 12 Javascript
JavaScript输出所选择起始与结束日期的方法
Jul 12 Javascript
基于LayUI分页和LayUI laypage分页的使用示例
Aug 02 Javascript
vuejs实现本地数据的筛选分页功能思路详解
Nov 15 Javascript
vue.js使用v-if实现显示与隐藏功能示例
Jul 06 Javascript
JS+H5 Canvas实现时钟效果
Jul 20 Javascript
iview Upload组件多个文件上传的示例代码
Sep 30 Javascript
详解Vscode中使用Eslint终极配置大全
Nov 08 Javascript
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
Zend公司全球首推PHP认证
2006/10/09 PHP
Banner程序
2006/10/09 PHP
PHP耦合设计模式实例分析
2018/08/08 PHP
jquery 上下滚动广告
2009/06/17 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
Js冒泡事件详解及阻止示例
2014/03/21 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
基于vue如何发布一个npm包的方法步骤
2019/05/15 Javascript
JS数组中对象去重操作示例
2019/06/04 Javascript
layui表单提交到后台自动封装到实体类的方法
2019/09/12 Javascript
[01:15:00]LGD vs Mineski Supermajor 胜者组 BO3 第一场 6.5
2018/06/06 DOTA
[01:02:47]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python 字符串操作实现代码(截取/替换/查找/分割)
2013/06/08 Python
用Python编写一个基于终端的实现翻译的脚本
2015/04/24 Python
Python语言的面相对象编程方式初步学习
2016/03/12 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
python logging重复记录日志问题的解决方法
2018/07/12 Python
windows下python安装小白入门教程
2018/09/18 Python
python将一个英文语句以单词为单位逆序排放的方法
2018/12/20 Python
Django REST framework视图的用法
2019/01/16 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
Django中和时区相关的安全问题详解
2020/10/12 Python
Selenium环境变量配置(火狐浏览器)及验证实现
2020/12/07 Python
行政部主管岗位职责
2013/12/28 职场文书
班主任经验交流会主持词
2014/04/01 职场文书
实验室标语
2014/06/21 职场文书
自习课吵闹检讨书范文
2014/09/26 职场文书
先进教育工作者事迹材料
2014/12/23 职场文书
社团个人总结范文
2015/03/05 职场文书
电影小兵张嘎观后感
2015/06/03 职场文书
单位同意报考证明
2015/06/17 职场文书
SpringBoot项目中控制台日志的保存配置操作
2021/06/18 Java/Android