2012-04-23 74 views
0

我最近在HTML和Javascript + jQuery中創建的項目存在小問題。我想阻止頁面緩存,因爲我需要用一些時間間隔刷新頁面的某個區域。如何使用javascript代碼刪除緩存?

如果我重新加載頁面,那麼我們可以將「no-cache」META標籤設置爲標題。但我不打算重新加載頁面,儘管jQuery使用AJAX調用XML文件,但這些JavaScript文件正在緩存併發生內存開銷。正因爲如此,我的FireFox崩潰和內存使用增加到2 GB。

任何人都可以告訴我一些富有成效的東西,這樣我就可以解決內存開銷問題,並順利地在瀏覽器上運行我的應用程序。

function refresh() { 
    $('#table_info').remove(); 
    $('#table').hide(); 
    if (refreshTimer) { 
     clearTimeout(refreshTimer); 
     refreshTimer = null ; 
    } 
    $.ajax({ 
     document.getElementById('refresh_topology').disabled=true; 
     $('<div id="preload_xml"></div>').html('<img src="pic/dataload.gif" alt="loading data" /><h3>Loading Data...</h3>').prependTo($("#td_123")); 
     $("#topo").hide(); 
     $('#root').remove(); 
     show_topology(); 
    }); 
} 

這是代碼和show_topology()經常被調用來使拓撲的每次不同的狀態。

+0

參考:避免緩存的Javascript] [1]。我認爲這可以幫助你。 乾杯。 [1]:http://stackoverflow.com/questions/1011605/clear-the-cache-in-javascript – Janaki 2012-04-23 10:31:04

+0

備選地可以轉動在服務器端with.htaccess緩存關閉以sertain不會忽略。 – 2012-04-23 10:37:25

回答

2

禁用jQuery的AJAX緩存:

$.ajax({cache: false});