您好我是javascript的新手,我有一小部分javascript,可以获得使用地理位置的lat和lon,然后将其传递给php页面。
我想要做的是每两分钟运行一次该函数,但每次运行该函数时都会加载test.php页面
我的代码在
之下 function position(){
var a=setTimeout(position(),60000)
}
if(navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(function(position)
{
var lat = position.coords.latitude;
var lon = position.coords.longitude;
document.location = "locator/test1.php?lat=" + lat + "&lon=" +
lon;
});
}
是否有将变量传递到php页面而不加载它?或者什么是调用javascript函数每两分钟更新一次细节的最佳方法。
由于
答案 0 :(得分:2)
首先,您的代码中有一个错误,可能是错字。
var a=setTimeout(position(),60000) <-- calling the function, not assigning it.
应该是
var a=setTimeout(position,60000);
现在回答你的问题:
对服务器进行Ajax调用。
var xmlHttp = new XMLHttpRequest(); //not the cross browser way of doing it
xmlHttp.open("GET", "locator/test1.php?lat=" + lat + "&lon=" + lon, true);
xmlHttp.send(null);