php - 尝试使用 JavaScript 每 3 分钟调用一次函数

标签 php javascript ajax-polling

我有一个返回整数的函数(社区站点上用户的当前信誉分数)。根据他们的评论和提交的投票方式,该数字通常会上升或下降。我想每 30 秒左右“轮询”一次,看看它是否已更改,如果已更改,则更新我显示的数字。

在另一个 StackOverflow 线程中,我发现这个 JavaScript 片段看起来很有用:

function listen() {
  $.get("/mylongrequestfile", {}, function(data) {
     $("#mydiv").html(data);
     listen(); // then launch again
  }));
};

我是否只用我的函数替换/mylongrequestfile?我正在尝试,但效果不佳。我如何使用此代码或其他一些片段来每隔 30 秒获取并显示此值?

最佳答案

你可以使用

window.setInterval

哪个

重复调用一个函数,每次调用该函数之间有固定的时间延迟。

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/

相关文章:

php - Stripe API PHP - 检索订阅(无需知道订阅 ID)

php - AJAX 不向 PHP 发送表单数据

javascript - 无法正确连接字符串以创建链接

javascript - 如何在PHP中使mysql查询不断刷新?

javascript 似乎没有从 rails 源获取数据

php - 这个正则表达式我做错了什么?

javascript - JavaScript 中 instanceOf 函数的实现

javascript - 刷新页面无需不断刷新

javascript - 插入 Ajax 轮询

PHP - 在 Windows 上使用 shell_exec 运行 ffmpeg.exe 的问题