2011-05-25 85 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

相关问题