脚本无法在非活动选项卡上运行

时间:2017-12-28 11:59:59

标签: javascript geolocation

我有地理定位的脚本。它仅在用户在网站上时才起作用。当浏览器被盗用或选项卡处于非活动状态时,脚本无效。我该如何解决?

var int=self.setInterval(function(){getLocation()},2000);
function getLocation()
{
    navigator.geolocation.getCurrentPosition(showPosition);
}

function showPosition(position)
{
    var latitude = position.coords.latitude;
    var longitude = position.coords.longitude;
    console.log('Position: '+latitude+' '+longitude);
    $.ajax({
    type : "POST",
    data : { latitude : latitude, longitude : longitude },
    url : "mylinktosaveposition",
    success : function(data){}
    });
}

1 个答案:

答案 0 :(得分:0)

这是浏览器内置的安全功能,没有办法解决这个问题!浏览器在处于非活动状态时会简单地冻结或关闭脚本,以提高活动选项卡的性能并减少电池供电设备的耗电量。如果您正在考虑因任何原因对地理人员进行地理处理,我建议您创建一个应用程序。看看离子是cordova上的一个框架,它使用angular来构建ios和android的应用程序,用于javascript / html等语言。