2012-01-30 95 views
0

下面是一個例子:每隔x秒刷新一次DIV內容而沒有永久頁面?

<script type="text/javascript"> 
var auto_refresh = setInterval(
function() 
{ 
$('#photos').load('photos.php').fadeIn("slow"); 
}, 5000); // refresh every 10000 milliseconds 
</script> 

<div id="photos"></div> 

問題是頁面上的其他JavaScript的複雜性是不是真的理想,從外部頁面重新加載DIV。如果這是唯一的方法,我會回溯並解決這個問題......我只是想知道是否可以從頁面中刷新div內容?

回答

4

你可以閱讀整個頁面,然後提取你正在尋找的元素:

$('#photos').load('YourPage.php#photos'); 

服務器仍然發送整個頁面到客戶端。

+0

這完成了它,但這樣做擰了很多jQuery。將解決它 - 謝謝! – elzi 2012-01-30 01:57:50

1
function refreshDiv(){ 
    $('#photos').load('photos.php').fadeIn("slow"); 
    setTimeout("do_again()", 5000) 
} 

function do_again(){ 
    refreshDiv(); 
} 

這將繼續加載您的jQuery每5秒(5000毫秒)。

+1

這正是他已經做的,但更糟糕的。 (不要將字符串傳遞給'setTimeout') – SLaks 2012-01-30 00:46:03

+0

函數do_again()的作用是什麼?你可以直接將'refreshDiv()'傳遞給'setTimeout()'。 – nnnnnn 2012-01-30 01:16:09