微信はユーザーの緯度を取得し、詳細なアドレスに変換する.
5338 ワード
を する. アドレス //
var url = window.location.href;
// var urlParam = Public.urlParam();
// var vendorId = urlParam.vendorId;
$(function() {
$.ajax({
type: "POST",
url:" , appid, ",
data: {
urlStr: url,
vendorId: 0
},
async: false,
success: function (data) {
// alert(JSON.stringify(data));
if (data.status == 1 && data.dataValue) {
var data1 = JSON.parse(data.dataValue);
// alert(JSON.stringify(data1));
configWXJSApi(data1.url, data1.appId, data1.timestamp, data1.nonceStr, data1.signature);
}
},
error:function () {
alert(" ")
}
});
function configWXJSApi(shareUrl, appId, timestamp, nonceStr, signature) {
var jsApiList = [
'openLocation',
'getLocation'
] // 、
wx.config({
debug: false,
appId: appId,
timestamp: timestamp,
nonceStr: nonceStr,
signature: signature,
jsApiList: jsApiList
});
wx.ready(function() {
wx.checkJsApi({
jsApiList: jsApiList, // JS , JS 2,
success: function(res) {
// , api true, false
// :{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
wx.getLocation({
type: 'wgs84', // wgs84 gps , openLocation , 'gcj02'
success: function (res) {
// alert(JSON.stringify(res));
var latitude = res.latitude; // , , 90 ~ -90
var longitude = res.longitude; // , , 180 ~ -180。
var speed = res.speed; // , /
var accuracy = res.accuracy; //
// alert(latitude)
// alert(longitude)
geocoder(latitude,longitude)
/*wx.openLocation({
latitude: latitude, // , , 90 ~ -90
longitude: longitude, // , , 180 ~ -180。
//name: 'aaa', //
//address: '123asd', //
scale: 15, // , , 1~28。
//infoUrl: 'aaa' // ,
});*/
}
});
}
});
});
wx.error(function(res) {
alert(" "+res.message)
});
}
});
//
function geocoder(latitude,longitude) {
var ll=latitude+","+longitude;
$.ajax({
type : 'get',
url : 'http://apis.map.qq.com/ws/geocoder/v1',
dataType:'jsonp',
data : {
key:"xxxxxxx",//
location:ll,
//
get_poi:"1",// POI :1. ;0 ( )
coord_type:"1",// locations ,1 GPS
parameter:{"scene_type":"tohome","poi_num":20},//
output:"jsonp"
},
success : function(data, textStatus) {
if(data.status == 0){
var address = data.result.address;
// $("#address").html(address);
// alert(address)
$("#currentAddress").html(address);
}else {
alert(" , !")
}
},
error : function() {
alert(" , !")
}
});
}