首页 技术教程 实用代码 注册破解 正则表达式 网址导航 电子书籍

setTimeout:标签页休眠后导致延迟问题

问题 setTimeout在某一次写一个倒计时功能时,当浏览器缩小或者离开当前页面,倒计时会不准确,进入休眠模式,执行间隔比预期要慢。 设定一个 150ms 后执行的定时器不代表到了 150ms 代码就立刻执行,它表示代码会在 150ms 后被加入到队列中。如果在这个时间点上,队列中没有其他东西,那么这段代码就会被执行。 也就是说定时器会在你任务队列中没用执行任务时才会将你的定时器添加到任务队列中。这样,他会带来一些问题: 无视代码错误 setInterval有个讨厌的习惯,即对自己调用的代码是否报错这件事漠不关心。换句话说,如果setInterval执行的代码由于某种原因出了错,它还会持续不断(不管不顾)地调用该代码。 无视网络延迟...
类别:网页编程 - JavaScript    查看:160    更新:2023-07-15

setTimeout和setInterval的区别

window对象有两个主要的定时方法,分别是setTimeout 和 setInteval 他们的语法基本上相同,但是完成的功能取有区别。  setTimeout方法是定时程序,也就是在什么时间以后干什么。干完了就拉倒。  setInterval方法则是表示间隔一定时间反复执行某操作。  如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行。如果要清除计数器需要 根据使用的方法不同,调用不同的清除方法:  例如:tttt=setTimeout('northsnow()',1000);clearTimeout(tttt);  或者:tttt=setInterval('northsnow()',1000);clearInteval(tttt);  举一个例子:<div id="liujincai"></div><input type="button" na...
类别:网页编程 - JavaScript    查看:114    更新:2014-05-21