全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

基于JavaScript定位当前的地理位置

本文实例为大家分享了js定位当前地理位置的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1.0,user-scalable=no">
  <title>Title</title>
</head>
<body>
您目前在<p></p>
</body>
<script>
  //定义一个空的位置构造函数
  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
    }
  };
  //定义一个可以解析经纬度的方法,调用百度的api
  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&amp;ak=A396783ee700cfdb9ba1df281ce36862&amp;services=&amp;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){
    var str=""
    for(i in res ){
      str=res[i]+str
    }
    document.querySelector("p").innerHTML=str;
  })
</script>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# js  # 定位  # 地理位置  # 使用JS获取当前地理位置方法汇总  # JS获取当前地理位置的方法  # JavaScript获取用户所在城市及地理位置  # 使用JS获取当前地理位置的2种方法举例  # 不支持  # 您目前  # 大家分享  # 可以获得  # 具体内容  # 大家多多  # 被拒  # getLocation  # prototype  # str  # options  # var  # callback  # Location  # body  # Title 


相关文章: 如何在新浪SAE免费搭建个人博客?  建站主机解析:虚拟主机配置与服务器选择指南  建站之星如何助力网站排名飙升?揭秘高效技巧  如何通过虚拟机搭建网站?详细步骤解析  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  公众号网站制作网页,微信公众号怎么制作?  c# await 一个已经完成的Task会发生什么  香港服务器部署网站为何提示未备案?  视频网站制作教程,怎么样制作优酷网的小视频?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  如何用花生壳三步快速搭建专属网站?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  ,有什么在线背英语单词效率比较高的网站?  如何自定义建站之星网站的导航菜单样式?  如何在阿里云购买域名并搭建网站?  免费网站制作appp,免费制作app哪个平台好?  已有域名如何快速搭建专属网站?  如何用VPS主机快速搭建个人网站?  一键网站制作软件,义乌购一件代发流程?  如何快速查询网址的建站时间与历史轨迹?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  宝塔新建站点为何无法访问?如何排查?  建站之星如何快速生成多端适配网站?  招商网站制作流程,网站招商广告语?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何在万网开始建站?分步指南解析  jQuery 常见小例汇总  建站三合一如何选?哪家性价比更高?  北京网站制作公司哪家好一点,北京租房网站有哪些?  制作网站的公司有哪些,做一个公司网站要多少钱?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何用低价快速搭建高质量网站?  建站主机选购指南:核心配置与性价比推荐解析  怀化网站制作公司,怀化新生儿上户网上办理流程?  青岛网站建设如何选择本地服务器?  微信h5制作网站有哪些,免费微信H5页面制作工具?  公司网站制作价格怎么算,公司办个官网需要多少钱?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  如何用西部建站助手快速创建专业网站?  ,怎么在广州志愿者网站注册?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  用v-html解决Vue.js渲染中html标签不被解析的问题  家庭服务器如何搭建个人网站?  如何在香港免费服务器上快速搭建网站?  Android滚轮选择时间控件使用详解  建站org新手必看:2024最新搭建流程与模板选择技巧  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  广德云建站网站建设方案与建站流程优化指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。