基于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 相关文章推荐
In Javascript Class, how to call the prototype method.(three method)
Jan 09 Javascript
jquery中实现标签切换效果的代码
Mar 01 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
Jan 07 Javascript
什么是Node.js?Node.js详细介绍
Jun 01 Javascript
javascript实现禁止右键和F12查看源代码
Dec 26 Javascript
用JavaScript实现PHP的urlencode与urldecode函数
Aug 13 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
Jun 26 Javascript
js addDqmForPP给标签内属性值加上双引号的函数
Dec 24 Javascript
了解ESlint和其相关操作小结
May 21 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
Jul 19 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
Dec 11 Javascript
JavaScript 如何在浏览器中使用摄像头
Dec 02 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 远程关机实现代码
2009/11/10 PHP
使用PHP导出Word文档的原理和实例
2013/10/21 PHP
php去除头尾空格的2种方法
2015/03/16 PHP
mysql_escape_string()函数用法分析
2016/04/25 PHP
PDO::beginTransaction讲解
2019/01/27 PHP
JQuery 将元素显示在屏幕的中央的代码
2010/02/27 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
javascript跑马灯悬停放大效果实现代码
2012/12/12 Javascript
jquery UI Datepicker时间控件的使用及问题解决
2016/04/28 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
2016/10/27 Javascript
基于angular实现三级联动的生日插件
2017/05/12 Javascript
微信小程序画布圆形进度条显示效果
2020/11/17 Javascript
Vue实现简单的跑马灯
2020/05/25 Javascript
解决父组件将子组件作为弹窗调用只执行一次created的问题
2020/07/24 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
Vue2.0 ES6语法降级ES5的操作
2020/10/30 Javascript
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
python基础教程之五种数据类型详解
2017/01/12 Python
K-means聚类算法介绍与利用python实现的代码示例
2017/11/13 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
浅谈python中get pass用法
2019/03/19 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
Python字典底层实现原理详解
2019/12/18 Python
在TensorFlow中屏蔽warning的方式
2020/02/04 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
浅析Python 序列化与反序列化
2020/08/05 Python
美国标志性加大尺码时装品牌:Ashley Stewart
2016/12/15 全球购物
英国折扣零售连锁店:QD Stores
2018/12/08 全球购物
Ariat英国官网:为世界顶级马术运动员制造最优质的鞋类和服装
2020/02/14 全球购物
迎国庆演讲稿
2014/09/15 职场文书
学生检讨书范文
2014/10/30 职场文书
学生检讨书如何写
2014/10/30 职场文书
煤矿隐患排查制度
2015/08/05 职场文书
导游词之金鞭溪风景区
2019/09/12 职场文书
浅谈MySQL之select优化方案
2021/08/07 MySQL
JMeter对MySQL数据库进行压力测试的实现步骤
2022/01/22 MySQL