请参阅Matt对 this question的回答.他说.delay()让大多数人感到困惑,他给出了以下示例: .$( ‘#富’)隐藏()延迟(2000).slideDown()文本( ‘你好!’)延迟(2000).hide(). 小提琴见here.有人可以解释一行
.$( ‘#富’)隐藏()延迟(2000).slideDown()文本( ‘你好!’)延迟(2000).hide().
小提琴见here.有人可以解释一行代码的行为吗?
只有jQuery代码的某些部分可以用.delay()推迟 – hide()和text()不是该组的一部分.所以基本上代码正在做的是(不是真的这样做,这只是一个草图):
setTimeout(function(){ $('#foo').slideDown(); }, 2000); $('#foo').hide().text('Hello!').hide();
所以这就是为什么slideDown()似乎最后发生的原因.