簡體   English   中英

jQuery Mobile多頁面模板緩存

[英]jQuery Mobile multi-page template caching

我有一個使用jQuery Mobile構建的應用程序,其中所有頁面都在一個HTML文件中。 當我導航到一個頁面,填寫一個表單,然后離開它,我希望下次我在那個頁面上時,我填寫的表單數據不在那里。 我的問題是,這是一個緩存問題嗎? 如果是這樣,我該如何預防呢? 我嘗試過這樣的事情:

pageContainerElement.page({ domCache: false });

$(document).bind("mobileinit", function(){
    $.mobile.page.prototype.options.domCache = false;
});

但每當我回到頁面時,數據仍然存在

您遇到的一切都是jQuery Mobile打算如何工作的。 您已經閱讀了有關緩存和預取的文檔,但同時您缺少更大的圖片,主要是因為您沒有閱讀所有內容。

使用jQuery時,只有在使用多HTML模板時,緩存才有意義。 讓我們來看看你目前的狀態。 您正在使用多頁面模板,其中每個頁面都是單個HTML頁面的一部分。 在這種情況下,初始HTML文件完全加載到DOM中,它將保留在那里直到刷新頁面或直到您使用rel =“external”打開一些后續HTML文件(這等於完整頁面重新啟動)。

在任何其他情況下,初始HTML頁面將永遠保留DOM,並且您無法阻止它。 基本上,如果它們是初始HTML文件的一部分,則無法刪除加載到DOM中的頁面。 當然你可以強行刪除它們,但應用程序將遭受歷史導航問題,我不想建議這種情況。

你有兩個解決方案:

  1. 將該特定頁面移動到其他HTML文件。 在這種情況下,當您從該特定頁面轉換到其他頁面時,它將從DOM中刪除。

  2. 在pagebeforechange頁面事件期間清除以前的表單數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM