我有一个返回整数的函数(社区站点上用户的当前信誉分数)。根据他们的评论和提交的投票方式,该数字通常会上升或下降。我想每 30 秒左右“轮询”一次,看看它是否已更改,如果已更改,则更新我显示的数字。
在另一个 StackOverflow 线程中,我发现这个 JavaScript 片段看起来很有用:
function listen() {
$.get("/mylongrequestfile", {}, function(data) {
$("#mydiv").html(data);
listen(); // then launch again
}));
};
我是否只用我的函数替换/mylongrequestfile?我正在尝试,但效果不佳。我如何使用此代码或其他一些片段来每隔 30 秒获取并显示此值?
最佳答案
你可以使用
哪个
重复调用一个函数,每次调用该函数之间有固定的时间延迟。
var intervalID = window.setInterval(yourfunctionname, 300);
这会延迟 300 毫秒执行。
回调参数
setInterval() 会将回调调用延迟的毫秒数传递给回调函数,如果它需要其他参数作为参数,这可能会使它感到困惑。要回避该问题,请使用匿名函数来调用您的回调。
如果您需要将参数传递给回调函数,但需要它在 Internet Explorer 中工作,则可以使用相同的技术,而 Internet Explorer 不支持使用 setInterval() 发送额外的参数。
var intervalID = setInterval(function() { YourFunction(); }, 300);
关于php - 尝试使用 JavaScript 每 3 分钟调用一次函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1491737/