如何每n秒运行jQuery load()请求?

时间:2013-02-25 08:51:58

标签: javascript jquery

我有以下代码

$('document').ready(function() {
  reload(); 
}); 

function reload() {
  $('div#info').load('http://somesite.ru/script.php');
  setInterval(reload(), 10000);   
}

但似乎方法reload()运行得太快。 Firefox向我显示消息,关于jquery.min.js是sems to busy。如何每10秒刷一次页面刷新一次?

5 个答案:

答案 0 :(得分:2)

您应该删除(),并将setInterval功能置于reload功能的上下文之外。

function reload() {
   $('#info').load('http://somesite.ru/script.php');
}
$(document).ready(function() {
   setInterval(reload, 10000);   
}); 

答案 1 :(得分:1)

替换:

setInterval(reload(), 10000);   

使用:

setInterval(reload, 10000);   

答案 2 :(得分:1)

使用setTimeout()代替它,它比setInterval()安全且性能更好,以满足您的要求。

var time= setTimeout(reload,1000);

在reload()方法中检查某些条件后再次调用其中的setTimeout

function reload()
{
 /// your logic
setTimeout(reload,1000);
}

使用上述变量在您不想再重新加载时销毁间隔

clearTimout(time);

答案 3 :(得分:0)

       Refer: http://www.w3schools.com/js/tryit.asp?filename=tryjs_setinterval

     setInterval(function(){reload();},10000);

答案 4 :(得分:0)

另一种方法是使用

$('document').ready(function() {
  setInterval(function() { 
    $('div#info').load('http://somesite.ru/script.php'); 
  }, 10000);
});

一切正常。非常感谢你的回答。