最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript微信定位功能實現(xiàn)方法

 更新時間:2016年11月29日 14:15:13   作者:peggyhao  
這篇文章主要介紹了JavaScript微信定位功能實現(xiàn)方法,將定位到的經(jīng)緯度轉(zhuǎn)換為百度地圖對應的經(jīng)緯度,具有一定的參考價值,感興趣的小伙伴們可以參考一下

分享下微信是如何定位的:

本文主要講解如何利用微信定位,如何將定位到的經(jīng)緯度轉(zhuǎn)換為百度地圖對應的經(jīng)緯度,以及處理定位失敗、取消及錯誤時的默認做法。

//獲取地理位置信息start
//封裝成一個函數(shù)
 function getPosition() {
 //用ajax請求
  $.ajax({
   url: "/wechat/jssdk",//請求地址
   type: 'post',//post請求
   dataType: 'json',
   contentType: "application/x-www-form-urlencoded; charset=utf-8",
   data: {
    'url': location.href.split('#')[0]//將第一個#號前的地址傳遞
   },
//請求成功的函數(shù)
   success: function (data) {
    wx.config({
     // debug: true,
     appId: data.data.appId,
     timestamp: data.data.timestamp,
     nonceStr: data.data.nonceStr,
     signature: data.data.signature,
     jsApiList: ['checkJsApi', 'getLocation']
    });
    wx.ready(function () {
     wx.getLocation({
     //獲得定位成功
      success: function (res) {
      //這是微信返回的真正經(jīng)緯度
       var oldLat = res.latitude; // 緯度,浮點數(shù),范圍為90 ~ -90
       var oldLng = res.longitude; // 經(jīng)度,浮點數(shù),范圍為180 ~ -180。
       /*下面是為了將獲得的真正經(jīng)緯度轉(zhuǎn)換為對應的百度經(jīng)緯度,因為是利用百度地圖的經(jīng)緯度去查詢數(shù)據(jù)的,數(shù)據(jù)庫中存的也是百度的經(jīng)緯度*/
       //創(chuàng)建一個百度地圖的點
       var customerPoint = new BMap.Point(oldLng, oldLat);
       //
       var convertor = new BMap.Convertor();

       var pointArr = [];//創(chuàng)建一個數(shù)組
       pointArr.push(customerPoint);//將剛才的點放進去
       convertor.translate(pointArr, 1, 5, initMap); //轉(zhuǎn)換坐標
       function initMap(data) {
        if (data.status === 0) {//轉(zhuǎn)換成功
         var point = data.points[0];//得到后的點
         var lng = point.lng;//獲得轉(zhuǎn)換后的經(jīng)度
         var lat = point.lat;//獲得轉(zhuǎn)換后的緯度
         toDoFunction(lng, lat);//將經(jīng)緯度傳入到要運用的函數(shù)中
        } else {
        //下面兩行是默認定位到西湖的經(jīng)緯度
         lng = 120.141375;
         lat = 30.257806;
         toDoFunction(lng, lat);//將經(jīng)緯度傳入到要運用的函數(shù)中
        }
       }

      },
      //取消定位
      cancel: function () {
      //下面兩行是默認定位到西湖的經(jīng)緯度
       var lng = 120.141375;
       var lat = 30.257806;
       toDoFunction(lng, lat);//將經(jīng)緯度傳入到要運用的函數(shù)中
      },
      //定位失敗
      fail: function () {
      //下面兩行是默認定位到西湖的經(jīng)緯度
       var lng = 120.141375;
       var lat = 30.257806;
       toDoFunction(lng, lat);//將經(jīng)緯度傳入到要運用的函數(shù)中
      }

     });
     //定位發(fā)生錯誤
     wx.error(function () {
     //下面兩行是默認定位到西湖的經(jīng)緯度
      var lng = 120.141375;
      var lat = 30.257806;
      toDoFunction(lng, lat);//將經(jīng)緯度傳入到要運用的函數(shù)中
     });

    });
   }
  });
 }

以上代碼,如果可以定位到就用定位到的真正的經(jīng)緯度,再轉(zhuǎn)換成百度地圖對應的經(jīng)緯度,如果定位失敗或者是點擊取消或者發(fā)生錯誤,則默認定位到西湖的經(jīng)緯度。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

黄龙县| 汉阴县| 寻甸| 商水县| 湾仔区| 琼结县| 西丰县| 门头沟区| 海城市| 交城县| 高台县| 奇台县| 泸州市| 麻城市| 宁安市| 江城| 南川市| 夏津县| 沙河市| 靖西县| 本溪市| 巫山县| 镇宁| 义马市| 玉屏| 宿松县| 甘孜县| 泽州县| 固始县| 皋兰县| 松原市| 钦州市| 平利县| 津市市| 普定县| 都安| 许昌市| 基隆市| 尚志市| 马山县| 隆德县|