2011-05-25 94 views
10

我是jquery Mobile的新手(雖然我熟悉jquery),但無法找到在顯示頁面後運行的事件。我正在使用jStorage來存儲一些數據,並且我想要檢查是否有任何數據以及是否在頁面中顯示不同的內容(如將元素添加到列表中)。jQuery Mobile在頁面顯示後事件

但是,$(document).ready不工作,如果我改變頁面(意味着哈希變化)。

編輯: 我已經試過pageshow事件

$('div').live('pageshow',function(event, ui){ 
    alert('TEST'); 
}); 

但內容放在HTML之前它發生。

+0

'pageshow'應該在轉換完成後觸發。你如何生成頁面? – DarthJDG 2011-05-25 15:07:45

+0

可能會添加一些代碼,以便我們可以看到發生了什麼? – 2011-05-25 15:13:39

+1

該死的,我實際上找到了答案,這是因爲我使用了ID爲「list-content」的div,並且id實際上翻了一番(因爲jquery mobile保留了舊頁面),並且當我編輯它編輯的內容時(隱藏的) – 2011-05-25 15:13:54

回答

12

jQuery Mobile documentation(這始終是一個良好的開端):

pagebeforeshow

觸發頁面上被顯示,其過渡開始之前。

pagebeforehide

觸發頁面上被隱藏,過渡開始之前。

pageshow

觸發頁面上被顯示,其過渡完成後。

pagehide

觸發頁面上被隱藏,過渡完成後。

+1

我已經試過了。檢查我的編輯,但發生在頁面html之前。 – 2011-05-25 15:05:50

+1

同樣的問題在這裏,需要對頁面加載做一些重新計算。在加載前,頁面顯示在轉換後觸發。 – Maurice 2013-01-17 15:44:15

相關問題