testDiv.movement = setTimeout(str,interval);
if(testDiv.movement){
     clearTimeout(testDiv.movement);
}
请问clearTimeout在什么情况下会执行呢??

解决方案 »

  1.   

    前面有个条件if(testDiv.movement)这个什么时候为真呢?
      

  2.   

    你这样写 setTimeout只能执行一次 if分支永远为true
    setTimeout返回一个时间值 而你下边的if判断条件永远都是存在的 又将其clear掉了
      

  3.   

    谢谢,请问setTimeout返回的时间值是指什么时间呢?
      

  4.   

    你就这么理解 它返回一个标识 这个值是个整数形式 这个值是给clearTimeout用的
      

  5.   

    var timeOutId;    timeOutId = window.setTimeout(function () {
            //人类生活,值到有一天,世界重新洗牌
            if (new Date() === new Date(2012, 11, 21))
                window.clearTimeout(timeOutId);
            else
                arguments.callee();
        }, 0);