javascript - h5 kedudukan lokasi geografi getCurrentPosition, selepas kedudukan dibenarkan, fungsi tidak akan digunakan selepas berjaya, pakar boleh memberi nasihat!
淡淡烟草味
2017-06-05 11:12:51
// 出发城市
let $cityname;
let $config = {
getPoint: function() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition($config.showPosition, $config.handleLocationError, {
enableHighAccuracy: true,
timeout: 1000,
maximumAge: 0
});
}
},
initCity: function() {
// api.setLocalStorage('uzmdepartureCityName', '北京');
$cityname = '北京';
alert('失败');
},
handleLocationError: function(error) {
$config.initCity();
},
showPosition: function(position) {
let latitude = position.coords.latitude,
longitude = position.coords.longitude;
console.log(latitude, longitude);
let point = new window.BMap.Point(longitude, latitude),
gc = new window.BMap.Geocoder;
gc.getLocation(point, function(rs) {
try {
let locationCity = rs.addressComponents.province;
$cityname = locationCity;
// alert('您现在的城市是:' + $cityname);
$doc.getElementById('mobile').value = $cityname;
} catch (e) {
$config.initCity();
}
});
}
};
$config.getPoint();
Ini ada kaitan dengan penyemak imbas yang anda gunakan untuk ujian Tahun lepas, projek itu perlu dikaji untuk tempoh masa, tetapi tidak ada hasil yang memuaskan Setakat yang saya faham, sesetengah penyemak imbas menggunakan perkhidmatan lokasi Google Perkhidmatan Google disekat di China Jadi sama ada kedudukannya sangat, sangat perlahan dan sangat tidak tepat, atau mustahil untuk diletakkan. . . Anda boleh mencuba pelayar yang berbeza dan anda akan tahu perbezaannya. . . Adalah disyorkan untuk menggunakan perkhidmatan penentududukan JS pihak ketiga seperti AutoNavi yang telah menjalani pemprosesan khas akan menjadi lebih baik.