【发布时间】:2012-02-21 14:54:04
【问题描述】:
我对 HTML5 地理定位功能有疑问。我使用下面的代码来获取位置数据。我使用“enableHighAccuracy: false”选项来处理基于蜂窝的 GPS 功能。准确率低,但反应太快。但是有些人总是在手机上使用内置 GPS,所以这个代码对他们不起作用。但是,如果我将准确性选项更改为“enableHighAccuracy:true”,它适用于他们。但这一次,代码只使用了内置 GPS。不是基于 CELL 的 GPS。
问题 -> 我该怎么做:首先,如果此时无法获得位置,请尝试通过超时(例如 5000 毫秒)从内置 GPS 获取位置,只需查找基于单元的位置以进行超时(例如 10000 毫秒)如果此时无法获取位置,则返回错误消息。
这是我现在使用的代码。
提前致谢。
function getLocationfromGoogle() {
navigator.geolocation.getCurrentPosition(
function(pos) {
$("#lat_field").val(pos.coords.latitude);
$("#long_field").val(pos.coords.longitude);
var geocoder = new google.maps.Geocoder();
var latLng = new google.maps.LatLng(pos.coords.latitude,pos.coords.longitude);
geocoder.geocode({ 'latLng': latLng}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
//console.log(results[0].formatted_address);
$("#adresim").val(results[0].formatted_address);
}
else {
alert('Google convertion is not succesfully done.');
}
});
},function error(msg){
alert('Please enable your GPS position future.');
},{maximumAge:600000, timeout:5000, enableHighAccuracy: false}
);
}
【问题讨论】:
标签: html geolocation