在JS脚本中,多个setInterval之间会出现干扰!大概原因是由于从上到下的执行顺序,导致不能同时执行! 25

哪位大神有解决方案啊!... 哪位大神有解决方案啊! 展开
 我来答
百度网友489f930
2013-03-22
知道答主
回答量:10
采纳率:0%
帮助的人:7.3万
展开全部
js是单线程执行,setInterval是定时执行,从设定setInterval的时候,它的执行时间就定了,如果到时间了,碰巧线程被占了,那么此次setInterval的东东就被抛弃了,下次会继续执行,你可以试试 setTimeout
百度网友a19d193
推荐于2016-04-07 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1442万
展开全部
不能同时执行是肯定的,必然有一个先后次序,但是可以几乎是同时运行。
如果你确定是互扰的问题,可以只定义一个setInterval,例如
var timeIntervalNumber = 1;
var timeInterval = setInterval('doSomething()', 1000);
function doSomething() {
if (timeIntervalNumber % 2) {...}

if (timeIntervalNumber % 5) {...}

timeIntervalNumber ++;

if (timeIntervalNumber >= 2 * 5) {

timeIntervalNumber = 1;

}

}
追问
貌似不行!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhaoapk
2013-03-22 · TA获得超过3771个赞
知道大有可为答主
回答量:1343
采纳率:40%
帮助的人:1609万
展开全部
代码拿出来看一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式