代码<script>
function a() {
var i = 0;
if (i == 0) {
alert(i);
var tid= setInterval(function() {
++i;
alert(i);
if (i > 10) {
clearTimeout(tid);
}
}, 100);
}
}
a();
alert("last..");
</script>
本意是将定时器执行完成以后,最后再输出last。。可是结果不是这样。
我的last必须是要等定时器执行完成以后才能输出。不能放在定时器里面。有什么办法可以解决?
function a() {
var i = 0;
if (i == 0) {
alert(i);
var tid= setInterval(function() {
++i;
alert(i);
if (i > 10) {
clearTimeout(tid);
}
}, 100);
}
}
a();
alert("last..");
</script>
本意是将定时器执行完成以后,最后再输出last。。可是结果不是这样。
我的last必须是要等定时器执行完成以后才能输出。不能放在定时器里面。有什么办法可以解决?
<script>
function a() {
var i = 0;
var tid = setInterval(
function(){
++i;
alert(i);
if (i > 2) {
clearTimeout(tid);
alert("last...");
}
}, 100);
}
a();
</script>IE6下测试成功。
这个办法我知道我要的是在定时器外面执行。
这个函数里面你就写alert("last...");就会在最后弹出来。
function a() {
var i = 0;
if (i == 0) {
alert(i);
var tid= setInterval(function() {
++i;
alert(i);
if (i > 10) {
clearTimeout(tid);
}
}, 100);
}
}
a();
function b(){
alert("last..");
}
b();
</script>这样不行?
或者
<script>
var flag = false;
function a() {
var i = 0;
if (i == 0) {
alert(i);
var tid= setInterval(function() {
++i;
alert(i);
if (i > 10) {
clearTimeout(tid);
flag==true;
}
}, 100);
}
}
a();
function b(){
if(true==flag)
alert("last..");
}
b();
</script>