我正在尝试使用以下代码获取用户的GeoLocation:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script>
$(function() {
var Geo={};
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(success, error);
}
//Get the latitude and the longitude;
function success(position) {
Geo.lat = position.coords.latitude;
Geo.lng = position.coords.longitude;
populateHeader(Geo.lat, Geo.lng);
}
function error(){
console.log("Geocoder failed");
}
function populateHeader(lat, lng){
$('#Lat').html(lat);
$('#Long').html(lng);
}
});
</script>
</head>
<body>
<div class="geo-coords">
GeoLocation:
<span id="Lat">lat: ...</span>°,
<span id="Long">long: ...</span>°
</div>
</body>
</html>
我在传统的台式机上尝试过它并且看起来工作正常(除了一些近似因为缺少GPS传感器)以及我在S4 Mini上的移动Firefox,但在最后一种情况下我怀疑这个位置总是由Wi决定-Fi或移动连接,而不是GPS传感器。事实上,即使我打开和关闭GPS,我的智能手机的位置也总是相同的,与Google地图上同一GPS检测到的真实位置完全不同。
我如何确定GPS传感器是使用的默认传感器?
或者,您是否有其他建议可以跟踪用户设备的位置? 谢谢
答案 0 :(得分:0)
基本上,您只能获取API所提供的信息,并快速查看API文档:dev.w3.org我认为您可以做的最好,就是检查 coords.accuracy 强>
还要记得设置启用enableHighAccuracy,这样你就可以获得更准确的值。