2012-02-06 167 views
0

我有这个js是这样开始的:加载地图已经完全加载

$("#map-page").live("pageinit", function() 
{ 
    //Here the body function 
}); 

后的页面已经完成load.how我能做到的我会加载这个功能呢?

+0

'这似乎是一个非显而易见模式,对我来说 - 你从哪里得到它的? – lonesomeday 2012-02-06 22:43:51

+0

我从jquery手册中获得它。 – Mazzy 2012-02-06 22:44:24

+0

链接,也许? – lonesomeday 2012-02-06 22:45:50

回答

2

更新:看起来这种方法不会用jQuery手机(奇怪的是)。

试试这个:

$(document).ready(function() { 
    $("#map-page").doWhatever(); 
}) 
+0

我觉得他指的是jQuery手机,不要用jQuery手机的document.ready – 2012-02-07 01:16:00

+0

@ClayLiu感谢,更新使之更加清晰。留下答案是因为如果我没有,其他人肯定会在稍后发布。 – benekastah 2012-02-07 01:39:04

0

你应该更清楚,你是指的是jQuery Mobile,无论如何,最好的办法是将一个现场活动绑定到<div data-role="page">

触发的pagecreate/pageshow事件

如果您希望代码只运行一次pagecreate,如果需要每次显示页面(有动态数据)时运行,则使用pageshow并通过AJAX获取任何更改。请注意,如果您通过后退按钮等重新导航到页面,则可能会从内存中提取内容,在这种情况下,您的html将不会更新 - 您必须使用非AJAX加载或通过页面显示中的AJAX更新DOM

使用一个ID或类别的正确安装监听器,这里有一个更详细的答案,我写道:在此之前,是一个使用'活(“pageinit”)建议我见过的代码https://stackoverflow.com/a/9085014/737023