2016-12-28 34 views
1

我有一個名爲DisplayItems.html的本地非服務器網頁,它從另一個名爲items.html的網頁中提取列表。我現在已經設置了DisplayItems每隔x秒更新一次,以防item.html更新。我試圖傾向於檢查輸入是否每隔幾秒改變一次。如果是這樣,請刷新DisplayItems的主體,如果沒有,則不要刷新。我怎麼能這樣做呢?如果文件輸入發生變化,刷新body標籤

DisplayItems.html

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="X-UA-Compatible" content="IE=Edge"> 
<link rel="stylesheet" type="text/css" href="Scroll.css"> 
<script src="jquery1.min.js"></script> 
<script type="text/javascript" src="jquery.marquee.min.js"></script> 
<script src="jquery-1.12.4.min.js"></script> 
<script type="text/javascript"> 
var jQuery_1_12_4 = $.noConflict(true); 
var currentvar; 
var oldvar = jQuery_1_12_4('#text').load("items.html"); 
<!-- 
function Refresh() { 
setTimeout("location.reload(true);"); 
} 
window.setInterval(function Checkforchange(){ 
    currentvar = jQuery_1_12_4('#text').load("items.html"); 
    if (currentvar != oldvar) 
    currentvar = oldvar; 
    Refresh(); 
}, 5000); 
// --> 
</script> 
</head> 
<body onload="JavaScript:Refresh();"> 

<ul class='marquee' id="text"> 
</ul> 

<script type="text/javascript"> 
jQuery_1_12_4('#text').load("items.html"); 
</script> 
</body> 
</html> 

Items.html

<li>new item1</li> 
<li>senario2</li> 
<li>senario3</li> 
+0

問,爲什麼不乾脆iframe的改變到另一個頁面的頁面? –

+0

@NathanielFlick這是因爲Items.html是通過excel生成的,並且由於安全問題而無法使用.txt文件關聯它。我之前使用嵌入了IFrame的IFrame,並最終遇到了更多的問題。 – Brad

+0

'setTimeout(「location.reload(true);」);'沒有任何意義。所以你的選擇是使用Ajax來獲取頁面並檢查它是否已經改變,並且加載不會返回html,所以你的檢查不檢查響應...''console.log(currentvar)'會告訴你。 – epascarello

回答

0

也許這樣的事情?使用你的html(顯然擺脫了體內的刷新,顯然使用Jquery)。

<script type="text/javascript"> 

    function Checkforchange() { 

     $.get("/refresh/items.html", function (data) { 

      if ($('#text').html() !== data) { 
       $('#text').html(data); 
       window.setTimeout(Checkforchange, 5000); 
      } 
     }); 
    } 

    $(document).ready(function() { 
     Checkforchange(); 
    }); 

</script> 
+0

@布蘭登是否解決了這個問題?如果是這樣,請點擊複選標記考慮[接受它](http://meta.stackexchange.com/q/5234/179419),以便人們知道您找到了解決方案,並且它可以工作併爲回答者和你。沒有義務這樣做。讓我知道它是否無效或需要進一步解釋。謝謝! –

相關問題