解决点击多次jquery动画animate反应迟钝的问题

时间:2023-02-05 17:58:33
最近做了一个网页,用到了animate的动画效果,点击连接就滚动屏幕到相应的位置,可是前几次点击没有问题,随着点击次数的增多,动画响应越来越慢,到后来点击一次要等好几秒才开始滚动,最后我找到了原因,动画没有播放结束,队列越来越长导致的。 解决办法: $('body').stop().animate({scrollTop:aaa},300);在animate前加一个stop即可停止当前动画清空队列马上执行新的动画。 附上stop();的使用方法: stop([clearQueue], [gotoEnd]) 概述 停止所有在指定元素上正在运行的动画。 如果队列中有等待执行的动画(并且clearQueue没有设为true),他们将被马上执行。 参数 clearQueue (可选)Boolean如果设置为true,则清空队列。可以立即结束动画。 gotoEnd (可选)Boolean让当前正在执行的动画立即完成,并且重设show和hide的原始样式调用回调函数等。