animate动画被锁在队列中不动怎么解决

时间:2020-12-16 20:35:54

[示例]:

function scroll_to(obj){
            $('html,body').animate({scrollTop:obj.position().top},700);
        }

以上代码会导致滚动到指定位置后,动画会因为缓动时间过长的关系被锁定不被执行,解决办法是:

function scroll_to(obj){
            $('html,body').animate({scrollTop:obj.position().top},{queue:false,duration:80});
        }

将700换成{queue:false,duration:80}让当前动画跳出动画队列,不受动画队列的执行限制,立即执行。

参数讲解:

queue:false——跳出动画队列,使其拥有立即执行的优先级

duration:80——也是指的缓动时间,即动画执行持续时间