嗬嗬,想起来个比较恶劣的方法。
var sleeping = true;
setTimeout("sleeping = false", 1000); // 1 second
while(sleeping) {}强制WHILE,HEHE,倒是能实现,很恶劣吧。
var sleeping = true;
setTimeout("sleeping = false", 1000); // 1 second
while(sleeping) {}强制WHILE,HEHE,倒是能实现,很恶劣吧。
bigman_lfj(盐水小鱼) :你的方法我还没有试验,但从代码上分析,应该不可行,
原因是,settimeout无论有没有被执行,while语句会马上被运行,所以会形成死循环。
while(sleeping)这里是无法中止的循环。===========
相信已经有人测过楼上的代码了,跟我说的一样吧?
如果不想用那么就用2楼的方法吧。。
不过要改下在用。
比如过3秒
var ot = 获取下时间。然后在加上3秒。
while (true) {
var nt = 获取下时间。
if (nt >= ot) {
执行代码.
break;
}
}
实时的执行只能用setTimeout,setInterval来实现,没有其它更合理的方法.
而且,使用这个的时候,也并不是你指定3秒就一定3秒后执行,如果到三秒的时候,有程序在执行,它会等到这个程序执行完毕.
我知道,可以将line3和line4放到一个function里,
用settimeout(function,1000)来达到使line3和line4等待指定时间后再执行,
可是,我不想用这种方法,所以想请各位网友们帮忙,看再有没有别的办法??
**/说说这种方法有什么不妥?
function gTime(n){
var d = new Date();
var s = "" + d.getHours();
s += d.getMinutes();
s += d.getSeconds() + n;
s += d.getMilliseconds();
return s;
}
alert(1);
var nt, ot = parseInt(gTime(10));
do {
nt = parseInt(gTime(0));
}; while (nt < ot);
alert(2);
</script>
怎么能不行呢??
虽然这东西很不好。不过没有错误啊。。
你的代码我测了,好用,明天晚上送上分数,希望其他人还能有好的解决办法!!function fDelay()
{
alert("fDelay1");
var d = new Date();
var nt
var currTime = d.getTime();
var delayTime = currTime+2;
alert(parseFloat(currTime)+" : "+parseFloat(delayTime));
nt = d.getTime();
while(parseFloat(nt) < parseFloat(delayTime)){
nt = d.getTime();
alert(parseFloat(nt)+" : "+parseFloat(delayTime)); }
alert("fDelay2");
}
fDelay();
alert("fAlert");
muxrwc(王辰) 的方法会导致CPU使用率100%
还是用setTimeout吧。