Javascript Jquery mobile中的setInterval不工作

Javascript Jquery mobile中的setInterval不工作,javascript,html,Javascript,Html,我试图在jquery移动页面上每隔10秒触发一个事件。但是setInterval()似乎不起作用。即使在页面完成加载之前,也会显示警报() 这是我的密码 $(文档)。在(“页面显示”上,函数(事件){ setInterval(更新(),10000); 函数更新(){ 警惕(“嘿”); } }); 流线型聊天 您可以通过从更新()中删除设置间隔内的()进行检查 setInterval(update, 10000); function update() { alert("Hey"); }

我试图在jquery移动页面上每隔10秒触发一个事件。但是setInterval()似乎不起作用。即使在页面完成加载之前,也会显示警报()

这是我的密码

$(文档)。在(“页面显示”上,函数(事件){
setInterval(更新(),10000);
函数更新(){
警惕(“嘿”);
}
});

流线型聊天

您可以通过从
更新()
中删除
设置间隔内的
()
进行检查

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

您可以通过从
setInterval

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

您应该只将回调传递给
setInterval

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

$(文档)。在(“页面显示”上,函数(事件){
设置间隔(更新,1000);
函数更新()
{ 
console.info(“嘿”);
}
});

流线型聊天
流线型聊天

您应该只将回调传递给
setInterval

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

$(文档)。在(“页面显示”上,函数(事件){
设置间隔(更新,1000);
函数更新()
{ 
console.info(“嘿”);
}
});

流线型聊天
流线型聊天

setInterval

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

它应该是
update
而不是
update()
中的
setInterval

setInterval(update, 10000);
function update() { 
  alert("Hey");
 }
});
$(document).on("pageshow",function(event){
setInterval(update, 10000);
function update() 
{ 
   alert("Hey");
}
});

相信上面已经给出了答案,但为了将来参考或其他阅读本文的人,我编写了一个小函数,使调用超时变得更整洁:

功能:

function timeItOut(time, args, params1, params2){
    setTimeout(function(){
      // add more parameters as per your function with the most params
      args(params1, params2);
    }, time)
}
用法:

// Occurs after 4 seconds
timeItOut(4000, animateLights, device);

// Occurs after 7 seconds
timeItOut(7000, scrollScreen, 140);

显然,您可以向timeItOut函数添加更多的“params”,这只是我在此脚本中使用的最大参数数。

相信上面已经回答了这个问题,但为了将来参考或其他阅读本文的人,我编写了一个小函数,使调用超时更整洁:

功能:

function timeItOut(time, args, params1, params2){
    setTimeout(function(){
      // add more parameters as per your function with the most params
      args(params1, params2);
    }, time)
}
用法:

// Occurs after 4 seconds
timeItOut(4000, animateLights, device);

// Occurs after 7 seconds
timeItOut(7000, scrollScreen, 140);

显然,您可以向timeItOut函数添加更多的“参数”,这只是我在此脚本中使用的最大参数数。

尝试使用
requestAnimationFrame

“为什么我们要创建一个
setInterval
requestAnimationFrame
有很多优点。也许最重要的一点是,当用户导航到另一个浏览器选项卡时,它会暂停,因此不会浪费宝贵的处理能力和电池寿命

function update() 
{ 
alert("Hey");
requestAnimationFrame(update);
}
提及


尝试使用
requestAnimationFrame

“为什么我们要创建一个
setInterval
requestAnimationFrame
有许多优点。也许最重要的一点是,当用户导航到另一个浏览器选项卡时,它会暂停,因此不会浪费宝贵的处理能力和电池寿命

function update() 
{ 
alert("Hey");
requestAnimationFrame(update);
}
提及


它已经在工作了,同上您的代码,它已经在工作了,同上您的代码