Jquery Chaining vs Callbacks

前端之家收集整理的这篇文章主要介绍了Jquery Chaining vs Callbacks前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对于jQuery,以下两个片段的结果有什么不同.什么?我是否正确回调和链中的第二项都在第一个动画完成后执行
$(selector).animate({ opacity: 1 }).animate({ opacity: 0.5 });

VS

$(selector).animate({ opacity: 1},function()
{
    $(this).animate({ opacity: 0.5 });
});

在哪种类型的情况下,我想要使用哪一种?如果我需要做更复杂的事情或切换到不同的选择器,我会只使用后者吗?

提前致谢.

解决方法

它们实际上是相同的,所以你可能只是使用第一个.

回调(第二个版本)用于运行任何未自动排队的任意代码.

包括其他jQuery方法,例如.css(),如果不在回调中,将在动画完成之前很久就运行.

// .animate() is automatically queued
$(selector).animate({ opacity: 1 }).animate({ opacity: 0.5 });
// .css() is not automatically queued,so you'd need a callback
$(selector).animate({ opacity: 1 },function() {
    $(this).css({ opacity: 0.5 });
});

没有回调……

// Animation starts ----v
$(selector).animate({ opacity: 1 }).css({ opacity: 0.5 });
 // ...but .css() runs immediately-------------^
 // ...because it isn't automatically added to the queue.

猜你在找的jQuery相关文章