奇怪的循环终止(不会弹出窗口,只是innerHTML了) x = setInterval("sb()", 10); ????这行是不是多了对双引号?! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title> New Document </title> </head> <body onload="sb();"> <script language="JavaScript"> <!-- var a = 0; var x=null; function sb() { a++; if (a > 10) { document.getElementById("over").innerHTML += "超时"; clearInterval(x); xb(); } else if(x==null)//判断这个定时器是否已经存在 { x = setInterval("sb()", 10); } } function xb(){ document.getElementById("div1").innerHTML = a; } //--> </script> <div id="over"> </div> <div id="div1"> </div> </body> </html> 2楼的可以解决问题,但是我改成setTimeout也可以执行,难道setInterval会产生N个定时器???但是setTimeout生成的定时器句柄也是不同的啊 2楼的可以解决问题,但是我改成setTimeout也可以执行,难道setInterval会产生N个定时器???但是setTimeout生成的定时器句柄也是不同的啊 2楼的可以解决问题,但是我改成setTimeout也可以执行,难道setInterval会产生N个定时器???但是setTimeout生成的定时器句柄也是不同的啊 2楼的可以解决问题,但是我改成setTimeout也可以执行,难道setInterval会产生N个定时器???但是setTimeout生成的定时器句柄也是不同的啊 2楼的可以解决问题,但是我改成setTimeout也可以执行,难道setInterval会产生N个定时器???但是setTimeout生成的定时器句柄也是不同的啊 /*你原来的代码里面的判断就是这样了当a<10时,就执行了x = setInterval("sb()", 10); 所以产生了10个定时器,只是x保存的是最后一个定时器的变量.你clearInterval(x); 只是清除了最后一个定时器,还有9个再运行中setInterval()是产生一个连续执行的定时器setTimeout()产生一个只执行一次的定时器*/if (a > 10) { document.getElementById("over").innerHTML += "超时"; clearInterval(x); xb(); } else { x = setInterval("sb()", 10); } 活动倒计时条,替换字符串的时候无法取回匹配值恳求高手指教 jquery的append和remove问题 js怎么获取iframe页面点击超链接后的地址 js写的扫雷游戏。高手过来完美一下 各位师傅求救!我遇到一个问题,就是页面中用iframe嵌套的内容在浏览器中可以拖动?怎么回事?怎样禁止拖动? 【分享】jQuery视频 输入框中怎么控制银行卡每四位空格 如何让弹出窗口直接弹出在一个自己指定的网页里面? 怪问题! 江湖救急 多个邮件地址的判断怎么写?谢谢! 求一段能在FireFox下运行的JS
<html>
<head>
<title> New Document </title>
</head>
<body onload="sb();">
<script language="JavaScript">
<!--
var a = 0;
var x=null;
function sb() {
a++;
if (a > 10)
{
document.getElementById("over").innerHTML += "超时";
clearInterval(x);
xb();
}
else if(x==null)//判断这个定时器是否已经存在
{
x = setInterval("sb()", 10);
}
}
function xb(){
document.getElementById("div1").innerHTML = a;
}
//-->
</script>
<div id="over"> </div>
<div id="div1"> </div>
</body>
</html>
但是setTimeout生成的定时器句柄也是不同的啊
但是setTimeout生成的定时器句柄也是不同的啊
但是setTimeout生成的定时器句柄也是不同的啊
但是setTimeout生成的定时器句柄也是不同的啊
但是setTimeout生成的定时器句柄也是不同的啊
/*你原来的代码里面的判断就是这样了当a<10时,就执行了x = setInterval("sb()", 10);
所以产生了10个定时器,只是x保存的是最后一个定时器的变量.你clearInterval(x); 只是清除了最后一个定时器,还有9个再运行中setInterval()是产生一个连续执行的定时器
setTimeout()产生一个只执行一次的定时器
*/
if (a > 10)
{
document.getElementById("over").innerHTML += "超时";
clearInterval(x);
xb();
}
else
{
x = setInterval("sb()", 10);
}