如下代码,用setInterval自然是没问题,因为使用都是同一个timer,请问setTimeout怎么解决这个问题?
function scrollbars(){
index++;
if(index <= max){
target = index * singleHeight;
}else{
index = 0;
target = index * singleHeight;
}
$el.animate({'top': target}, 1000, function(){
timer = setTimeout(scrollbars, 2000);
});
}
timer = setTimeout(scrollbars, 2000);
$('#container').on('mouseenter', function(){
// 这里鼠标移入,清除定时器,可能在清除之前,上面已经生成新的定时器了,所以只是清除了之前的定时器,这里可能无法起到停止的作用
clearTimeout(timer);
});
慕的地6264312
相关分类