为什么我无法从网络浏览器(使用手机)获取Coords.Speed?

时间:2014-04-13 17:43:39

标签: javascript html5 geolocation

我试试这段代码,但速度总是变为Null而#34; 0"

<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to get your coordinates:</p>
<button onclick="getLocation()">Try It</button>
<script>
var x=document.getElementById("demo");
function getLocation()
  {
  if (navigator.geolocation)
    {
   navigator.geolocation.getCurrentPosition(showPosition);
    }
  else{x.innerHTML="Geolocation is not supported by this browser.";}
  }
function showPosition(position)
  {
  x.innerHTML="Latitude: " + position.coords.latitude + 
  "<br>Longitude: " + position.coords.longitude+    
  "<br>Speed: " + position.coords.speed +
  "<br>Time : " + new Date(position.timestamp) ;
  }
</script>
</body>
</html>

您可以访问此链接http://traffic.hcmut.edu.vn/nhan/test.html进行测试(使用移动浏览器)

1 个答案:

答案 0 :(得分:0)

如果没有给出数据的速度(例如实现没有提供它),那么你可以尝试检查不同测量之间的时间,然后检查teh坐标的距离,并使用这两个值确定速度。

虽然我怀疑浏览器引擎定位相当不准确,但是使用它可能无法获得过于准确的速度值。

如果你有一个运行你的应用程序的真实移动设备,你可能想要试用平台的任何自然API来获得更准确的值。