jQuery自动循环代码..ajax?

jQuery自动循环代码..ajax?,jquery,ajax,loops,Jquery,Ajax,Loops,我有一个小脚本,可以检查cookies,我想知道我如何才能做到这一点,使它自动而不是在页面刷新 我的代码是: if(!$.cookie("popbox")){ if(!$.cookie("visited") && !$.cookie("firstvisit")){ var expirydate = new Date(); expirydate.setTime(expirydate.getTime() + (1 * 60 * 1000));

我有一个小脚本,可以检查cookies,我想知道我如何才能做到这一点,使它自动而不是在页面刷新

我的代码是:

if(!$.cookie("popbox")){
   if(!$.cookie("visited") && !$.cookie("firstvisit")){
      var expirydate = new Date();
      expirydate.setTime(expirydate.getTime() + (1 * 60 * 1000));
      $.cookie("popbox", "feedback_popup", { expires: expirydate });
      $.cookie("firstvisit", 1, { expires: 9999 });
   } else {
      if(!$.cookie("visited") && $.cookie("firstvisit")){
         showPopuptimer();
      }
   }
}

如果您的意思是希望代码在显示页面时定期运行,则可以使用,它将在特定的时间间隔(或多或少)调用您赋予它的函数,或者使用一系列链式调用(
setTimeout
调用您赋予它的函数一次;然后再次调用函数调用
setTimeout
)。(这些链接指向Mozilla文档,但这些调用存在于所有浏览器中。)

我倾向于使用
setTimeout
调用的链式序列,因为它们很难从你身边逃脱
setInterval
一直发生,直到/除非在它返回的句柄上调用
clearInterval

例如:

checkTheCookies(); // The initial check on page load
function checkTheCookies() {
    if(!$.cookie("popbox")){
       if(!$.cookie("visited") && !$.cookie("firstvisit")){
          var expirydate = new Date();
          expirydate.setTime(expirydate.getTime() + (1 * 60 * 1000));
          $.cookie("popbox", "feedback_popup", { expires: expirydate });
          $.cookie("firstvisit", 1, { expires: 9999 });
       } else {
          if(!$.cookie("visited") && $.cookie("firstvisit")){
             showPopuptimer();
          }
       }
    }

    // Schedule the next check 15 seconds later (time in milliseconds)
    setTimeout(checkTheCookies, 150000);
}

您可能需要一个
if
,如果您有某种弹出窗口显示,并且不想在弹出窗口存在时进行检查。

使用setInterval实现此功能-它也正是我想要的!谢谢:)@green_arrow:很高兴这有帮助!