我想使用setInterval函数每隔10秒从其他网站获取数据。 但它不能每10秒重复一次,只是第一次运行然后停止。
setInterval(hypothes("testtest"), 10000);
function hypothes(username){
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
document.getElementById("demo").innerHTML = xhttp.responseText;
var Jsonfile= JSON.parse(xhttp.responseText);
console.log(Jsonfile.total);
console.log(username);
}
};
var url="https://hypothes.is/api/search?user=" + username + "&sort=created&order=asc";
xhttp.open("GET", url, true);
xhttp.send();
alert("test");
}
答案 0 :(得分:1)
setInterval(function(){hypothes("testtest")}, 10000);
答案 1 :(得分:1)
setInterval
需要一个功能。你传递了hypothes
的结果。试试这个:
setInterval(function() { hypothes("testtest") }, 10000);
答案 2 :(得分:0)
您的代码存在的问题是,您实际上并未将函数设置为回调,而是立即调用它。
修改设置间隔的代码,如下所示:
setInterval(function() { hypothes("testtest"); }, 10000);