最近在写一个复杂的图片展示效果,用到了jQuery.delay().animate(callback),当响应用户事件是需要停止动画,并要阻止callback函数执行。本来以为调用stop函数就可以达到效果。结果经过反复的测试才发现:
1、在animate执行之前,即delay的过程中,调用stop函数是,delay停止,立即执行animate,并且callback能继续执行;
2、在animate执行过中,调用stop则可以停止animate,而且callback也不会执行。
如果需要保证无论任何时候animate必须停止,而且callback不执行,则可以连续调用两次stop函数。
本文探讨了使用jQuery进行图片展示效果开发时遇到的问题,特别是在利用delay().animate(callback)时如何正确地停止动画并阻止callback函数执行的方法。文章指出,在delay过程中调用stop函数不仅会停止delay,还会立即执行animate及callback;而在animate执行过程中调用stop,则可以成功停止animate且不执行callback。为确保在任何时候都能完全停止animate并阻止callback执行,作者建议连续调用两次stop函数。
2万+

被折叠的 条评论
为什么被折叠?



