2012-01-12 79 views
4

我在我的web應用程序中遇到問題: 當我在瀏覽器中打開「多頁面模板」頁面時,我可以在DOM中看到兩個頁面,但只有一個是活動的,這是合乎邏輯的,對此沒有什麼可說的。如何使用jQuery移動通過AJAX加載多頁面模板?

但是,當我從前一頁加載一個「多頁面模板」頁面時,使用ajax轉換,我可以看到DOM中的上一頁(也是邏輯:如果用戶想要返回,則避免再次加載此頁面)但是我的「多頁面模板」頁面中只有一頁加載(第一頁)。

我以爲我在我的所有流程中都犯了一個錯誤:我在加載後自動刪除非活動頁面以避免ID衝突,但是我爲這個頁面寫了一個特殊情況,沒有使用我的自動頁面 - 刪除功能。和它完美的作品,當我在瀏覽器中打開「多頁模板」(這兩個網頁的DOM,我的「特殊情況」的代碼工作)

所以我去了文檔頁面: http://jquerymobile.com/demos/1.0/docs/pages/page-anatomy.html

我向下滾動到的部分:「多頁面模板結構」 右鍵點擊按鈕「查看多頁模板」>檢查元素 我們可以看到代碼:

<a href="../../docs/pages/multipage-template.html" 
data-inline="true" 
data-theme="b" 
data-role="button" 
rel="external" 
class="ui-btn ui-btn-inline ui-btn-corner-all ui-shadow vt-p ui-btn-up-b"> 
<span class="ui-btn-inner ui-btn-corner-all" aria-hidden="true"><span class="ui-btn-text">View multi-page template</span></span> 
</a> 

如此,的rel =」外部「 c ode意味着這個頁面不會被加載使用ajax過渡,並且當你點擊這個按鈕時,多頁面模板完美工作(但它不會通過ajax加載......) 回到按鈕代碼,我動態地刪除了屬性rel =「external」,所以頁面將被加載到ajax中。我點擊按鈕,多頁加載良好,但不可能到達「#two」頁面。在快速瀏覽DOM之後:id =「two」的頁面不存在,沒有被框架加載。

所以這可能是一個正常的行爲,但有沒有辦法在使用ajax轉換時加載多頁面模板的所有內部頁面?

(對不起我的英文不好,我希望它仍然是可以理解的)

回答

3

這是正常行爲,但是有一種變通方法。退房Todd Thomson的jQuery-Mobile-Subpage-Widget.

+0

謝謝,那就是我一直在尋找:) – 2012-02-15 10:56:17

相關問題