var sleepTimer;
var leftTime ; //睡眠剩余的时间
var sleepStep = 20 ; //每次睡眠时间默认20毫秒
backfunc 为睡眠完了要重新执行的方法, 一般是调用sleep方法的方法
何时调用sleep方法, 用一个全局变量进行线程通信.
function sleep(mill,backfunc)
{
leftTime = mill;
sleepTimer = setInterval(sleepCount,sleepStep, backfunc);
}
//sleep方法的执行方法
function sleepCount(backfunc)
{
leftTime = leftTime -sleepStep;
if(leftTime <0)
{
clearInterval(sleepTimer);
backfunc();
}
}
因为使用了全局变量, 所以不能保证同一个页面多处sleep调用能正常使用
可以为每次调用创建一个frame, 把全局变量和方法都放到frame中.
再就是借助与服务器的通信来实现睡眠
以上所有未经实验...