基于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 相关文章推荐
javascript+iframe 实现无刷新载入整页的代码
Mar 17 Javascript
js 创建快捷方式的代码(fso)
Nov 19 Javascript
js实现弹窗插件功能实例代码分享
Dec 12 Javascript
jQuery遍历之next()、nextAll()方法使用实例
Nov 08 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
Feb 25 Javascript
javascript实现页面滚屏效果
Jan 17 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
Nov 14 Javascript
vue+web端仿微信网页版聊天室功能
Apr 30 Javascript
vue动态注册组件实例代码详解
May 30 Javascript
Vue v-for循环之@click点击事件获取元素示例
Nov 09 Javascript
从零开始在vue-cli4配置自适应vw布局的实现
Jun 08 Javascript
一篇文章带你搞懂Vue虚拟Dom与diff算法
Aug 25 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
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
Yii 快速,安全,专业的PHP框架
2014/09/03 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
2016/07/14 PHP
PHP查看SSL证书信息的方法
2016/09/22 PHP
php取出数组单个值的方法
2018/03/12 PHP
cnblogs TagCloud基于jquery的实现代码
2010/06/11 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
判断客户浏览器是否支持cookie的示例代码
2013/12/23 Javascript
最简单的JavaScript验证整数、小数、实数、有效位小数正则表达式
2015/04/17 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
BootstrapValidator超详细教程(推荐)
2016/12/07 Javascript
AngularJS实现的回到顶部指令功能实例
2017/05/17 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
js canvas实现橡皮擦效果
2018/12/20 Javascript
Webpack4 使用Babel处理ES6语法的方法示例
2019/03/07 Javascript
vue组件创建的三种方式小结
2020/02/03 Javascript
js实现盒子滚动动画效果
2020/08/09 Javascript
[00:47]DOTA2荣耀之路6:玩不了啦!
2018/05/30 DOTA
[01:13:51]TNC vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python回溯法实现数组全排列输出实例分析
2015/03/17 Python
Python图形绘制操作之正弦曲线实现方法分析
2017/12/25 Python
python操作列表的函数使用代码详解
2017/12/28 Python
Python numpy 提取矩阵的某一行或某一列的实例
2018/04/03 Python
使用python编写监听端
2018/04/12 Python
解决PyCharm import torch包失败的问题
2018/10/13 Python
把JSON数据格式转换为Python的类对象方法详解(两种方法)
2019/06/04 Python
ffmpeg+Python实现B站MP4格式音频与视频的合并示例代码
2020/10/21 Python
python 实现汉诺塔游戏
2020/11/28 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
2021/01/24 Python
凯撒娱乐:Caesars Entertainment
2018/02/23 全球购物
家长对小学生的评语
2014/01/28 职场文书
入党推优材料
2014/06/02 职场文书
人事任命书格式
2014/06/05 职场文书
体操比赛口号
2014/06/10 职场文书
动画「半妖的夜叉姬」新BD特典图公开
2022/03/22 日漫
源码安装apache脚本部署过程详解
2022/09/23 Servers