我试图将其保持在循环中,但是每次我尝试将其保持在循环中时,网页都会冻结。有什么建议如何通过此获取实时位置更新吗?
function hello(){
for(var i=0;i<=10;i++){
if(i==10){
call();
i=0;
}
}
function call(){
var settings = {
"url": "https://pos.ls.hereapi.com/positioning/v1/locate?apiKey=imnotgoingtoshareliveapikeyeveragain",
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/json"
},
"data": JSON.stringify({"lte":[{"mcc":404,"mnc":49,"cid":231706401}]}),
};
$.ajax(settings).done(function (response) {
console.log(response);
});
}
答案 0 :(得分:1)
尝试此操作(每10秒将触发呼叫功能):
function call(){
var settings = {
"url": "https://pos.ls.hereapi.com/positioning/v1/locate?apiKey=s_WF6U2g60ucHbmnYIyuieeUWnkT0jshGf4mD33kpwI",
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/json"
},
"data": JSON.stringify({"lte":[{"mcc":404,"mnc":49,"cid":231706401}]}),
};
$.ajax(settings).done(function (response) {
console.log(response);
});
}
function hello(){
setInterval(function(){ call() }, 10000);
};
hello();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
答案 1 :(得分:0)
您可以使用setInterval
每隔x秒运行一次,而不用编写两个单独的函数:
var settings = {
"url": "https://pos.ls.hereapi.com/positioning/v1/locate?apiKey=s_WF6U2g60ucHbmnYIyuieeUWnkT0jshGf4mD33kpwI",
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/json"
},
"data": JSON.stringify({"lte":[{"mcc":404,"mnc":49,"cid":231706401}]}),
};
setInterval(function(){
$.ajax(settings).done(function (response) {
console.log(response);
});
}, 10000);