2014-01-16 69 views
0

我想寫一個相當簡單的畫廊預覽樣式的程序,如下圖所示:延遲使用.show()和.hide()jQuery的函數功能

$(document).ready(function() { 
$('#moving_photos').mouseover(function() { 
    $('#img4').delay(1000).hide(500); 
    $('#img3').delay(2000).hide(500); 
    $('#img2').delay(3000).hide(500); 
    $('#img2').delay(5000).show(500); 
    $('#img3').delay(6000).show(500); 
    $('#img4').delay(7000).show(500); 
}); 

});

我的問題出現後,前三個圖像已被隱藏。在下一個圖像再次顯示之前,大約有五秒鐘的延遲,它看起來更像是函數重置而不是函數的完成。任何幫助,你可以提供將不勝感激。

+0

你可以給HTML太 –

+0

你說的「看起來更像是功能復位」意味着你的#IMG4 7秒的延遲?此外,由於您的函數調用不是異步的,因此會有5秒的延遲。你應該使用'setTimeout'。 – Zhihao

回答

1

delay()不適用於hide()show()。它與​​和fadeIn()

$('#moving_photos').mouseover(function() { 
    $('#img4').delay(1000).fadeOut(500); 
    $('#img3').delay(2000).fadeOut(500); 
    $('#img2').delay(3000).fadeOut(500); 
    $('#img2').delay(5000).fadeIn(500); 
    $('#img3').delay(6000).fadeIn(500); 
    $('#img4').delay(7000).fadeIn(500); 
}); 

工作同時,如果您希望圖像淡入更快...

變化的延遲時間。 1000等於1秒。

所以有它開始淡入

之前
+0

沒有意識到它與這些功能不兼容。你說得對,在花了幾分鐘時間玩完之後,它完美運作。謝啦 –