我希望div从视口中滑出,然后在具有不同背景图像的相同位置淡入淡出。这只会滑出来:
$('#myDiv').hide('slide').queue(function() {
$(this).css({'background-image': 'url(images/picB.png)'});
$(this).fadeIn();
}
hide('slide')
最终会将div设置为display: none;
,该位置将恢复到之前的位置。我需要做些什么来完成这项工作?
答案 0 :(得分:1)
不要忘记.dequeue
!
当你.queue
一个函数时,你必须调用.dequeue
来通知jQuery函数已经完成。
您当前的功能是将.fadeIn
添加到队列中,但由于您的排队功能永远不会“完成”,因此永远不会调用它。
$('#myDiv').hide('slide').queue(function() {
$(this).css({'background-image': 'url(images/picB.png)'})
.fadeIn()
.dequeue(); //Tell jQuery to do the fade
});
答案 1 :(得分:1)
我认为您正在寻找类似的内容:http://jsfiddle.net/f42dsjb2/
$('#myDiv').hide('slide').queue(function() {
$(this).show('slide').css({"background":"red"}).dequeue();
});