2014-05-23 69 views
1

我使用JQM 1.3.2和每個html文件1頁。 JQM自動刪除DOM中由AJAX加載的頁面。但是有一個已知的問題(在文檔中明確指出並且在各種論壇中經常討論)第一頁未被刪除。如果有這種解決辦法的任何潛在的缺陷我想知道:從jQuery Mobile中刪除DOM中的第一頁

$(document).on('pageshow.firstPageRemoval', function (event, data) { 
    if (data.prevPage.length > 0) { 
     data.prevPage.remove(); 
     $(document).off('pageshow.firstPageRemoval'); 
    } 
}); 

從我簡短的測試,它似乎是按設計工作。第一頁加載,並data.prevPage.length === 0,所以它什麼都不做。在下一個頁面轉換之後,它將刪除第一個頁面並刪除處理程序。

我的問題是,是否有任何問題可能會出現,因爲我已經刪除了第一頁?

回答

1

唯一的問題是瀏覽器的歷史,基本上你會刪除頁面,但它仍然會保留在歷史中。

當然有一個解決方法。首先不要刪除第一頁,而是刪除第一頁。

讓您的第一個HTML空白,並在頁面文檔就緒狀態期間加載外部頁面。不幸的是,您將無法使用pageinit(或此處的類似頁面事件),因爲您不會有初始頁面來觸發它。

這樣你將繞過這個問題,瀏覽器歷史將保持乾淨和完好。