2011-11-27 48 views
0

我希望這個div能夠在頁面加載時(即周圍)立即加載,然後每10秒自動刷新一次。 這就是我所擁有的,每10秒刷新一次,但不會立即加載。jQuery設置淡入淡出的初始速度

我可以將初始刷新設置爲100ms,然後在每10秒刷新一次?

<script type="text/javascript"> 
    var auto_refresh = setInterval(
    function() 
    { 
     $('#now-playing').load('now-playing-info.php').fadeIn("fast"); 
    } 
    , 10000); // refresh every 10000 milliseconds 
</script> 

回答

3

您需要先運行一次。

<script type="text/javascript"> 

$(function() { 
    function nowPLaying() 
    { 
     $('#now-playing').load('now-playing-info.php').fadeIn("fast"); 
    } 
    nowPLaying(); 
    var auto_refresh = setInterval(nowPLaying, 10000); // refresh every 10000 milliseconds 
}); 

</script> 
+0

這不起作用。它仍然需要10秒加載 – user537137

+0

對不起,忘了把它放在一個doc.ready爲你 – Sinetheta

+0

真棒,現在工作。謝謝 – user537137

1

你可以只加載它,然後設置時間間隔:

$('#now-playing').load('now-playing-info.php').fadeIn("fast"); 
var auto_refresh = setInterval(function(){ 
    $('#now-playing').load('now-playing-info.php').fadeIn("fast"); 
}, 10000); 

你可以放棄一個setTimeout()而不是整個setInterval()。例如:

var loadNowPlayingInfo = function(){ 
    $('#now-playing').load('now-playing-info.php').fadeIn("fast"); 
    setTimeout(loadNowPlayingInfo, 10000); 
} 
loadNowPlayingInfo(); // Calls the function, then starts your interval 

我會考慮第二個更好的選擇。另外請注意,您可能想要setTimeout()在​​的success處理程序中,因此它將等待先前加載。