属性如何使用jQuery的与延迟改变HTML元素的CSS 属性。使用jQuery更改CSS与延迟
想象一下这种情况。我有div
与bg color
蓝色。我希望它淡出,当它淡入,我想bg color
是红色的。
我试过了。
$("div").fadeOut().delay(500).css("background-color","red").fadeIn();
虽然淡出格已经改变了颜色以红色它消失之前,它不遵循链的事件序列。我怎样才能使这一切发生在一条线上。
属性如何使用jQuery的与延迟改变HTML元素的CSS 属性。使用jQuery更改CSS与延迟
想象一下这种情况。我有div
与bg color
蓝色。我希望它淡出,当它淡入,我想bg color
是红色的。
我试过了。
$("div").fadeOut().delay(500).css("background-color","red").fadeIn();
虽然淡出格已经改变了颜色以红色它消失之前,它不遵循链的事件序列。我怎样才能使这一切发生在一条线上。
你可以使用任何功能参与动画队列queue
function:
$("div")
.fadeOut()
.delay(500)
.queue(function() {
$(this).css("background-color","red").dequeue();
})
.fadeIn();
注意回调中的dequeue
通话,这就是告诉jQuery来继续在队列中的下一件事。
$("div").fadeOut(500, function() {
$("div").css("background-color","red").fadeIn()
});
'setTimeout'版本很好。这个版本不会延迟OP的代码似乎想要的方式。 –
+1为一个很好的解决方案。但是,你拿出了我的延迟选项。 500ms似乎现在应用于fadout。并没有延迟:( – MarsOne
是的这就是我想要的。谢谢你的解释 – MarsOne
@MarsOne:不客气!很高兴帮助。 –