【转载】jQuery动画连续触发、滞后反复执行解决办法

转载: http://www.cnblogs.com/yuejin/archive/2012/12/18/2822595.htmlhtml


jQuery中slideUp 、slideDown、animate等动画运用时,若是目标元素是被外部事件驱动, 当鼠标快速地连续触发外部元素事件, 动画会滞后的反复执行,其表现不雅。jquery

则解决办法:ide

一、在触发元素上的事件设置为延迟处理, 便可避免滞后反复执行的问题(使用setTimeout)动画

二、在触发元素的事件时预先中止全部的动画,再执行相应的动画事件(使用stop)spa

jquery stop:htm

//语法结构
$("#div").stop();//中止当前动画,继续下一个动画
$("#div").stop(true);//清除元素的全部动画
$("#div").stop(false, true);//让当前动画直接到达末状态 ,继续下一个动画
$("#div").stop(true, true);//清除元素的全部动画,让当前动画直接到达末状态
本人通常推荐使用第二种方法 blog

$("#div").stop().animate({width:"100px"},100);事件

相关文章
相关标签/搜索