百分求解:使用多个setTimeout进行同步的问题

ditto0723 2005-10-22 10:25:32
我做了一动态监控的页面,页面分为几个部分,每个部分独立定时用xmlHttp从服务器获得最新数据并显示,所以我用了多个setTimeout定时器,只更新其中任何一部分时都非常正常,当有两个或两个以上定时器同时运行时,出现了有时有的正常,有的变慢;有时只有一个正常,其它的跟本不工作;极少数情况下全部定时器都不工作,想请教各件解决方法,先谢了.

注:
1.不能采用,一个页面嵌入多个iframe,各个iframe独立定时更新的方法,因为各部分数据有关联,藕合性比较强
2.确定没有timerID错误清除的问题,每个定时更新函数模式如下
var tmrID1;
function f1(){
clearTimeout(tmrID1);
//处理更新
tmrID1=setTimeout("f1()",1000);
}

var tmrID2;
function f2(){
clearTimeout(tmrID2);
//处理更新
tmrID2=setTimeout("f2()",500);
}

在页面上有个按钮,当按下时,每个函数都调用,且只调用一次
...全文
529 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ditto0723 2005-10-23
  • 打赏
  • 举报
回复
谢谢您,原来是我代码有Bug,呵呵.
myy 2005-10-23
  • 打赏
  • 举报
回复
我也遇到类似问题,我想可能是因为xmlHttp,如果你的多个xmlHttp是用的同步模式,就会有问题,具体什么原因不清楚。
梅雪香 2005-10-22
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
function valAdd(src){
src.value=parseInt(src.value,10)+1;
setTimeout(function(){valAdd(src);},1000);
}
//-->
</script>
<input type="button" value=0 style="width:30" onclick="valAdd(this)">
<input type="button" value=0 style="width:30" onclick="valAdd(this)">
<input type="button" value=0 style="width:30" onclick="valAdd(this)">


没什么问题啊

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧