对于我使用jquery mobile构建的phonegap应用程序,如果我想转到另一个页面,请使用rel =“external”,例如,如果我想从index.html转到users.html ..
我使用这个选项,因为否则我不能在users.html中使用javascript函数..例如它不会在document.ready中执行什么..但是..如果我使用rel =“external”那么它会工作..
问题是,如果我使用rel =“external”,转换(幻灯片)将不再起作用。有人知道为什么会这样吗?
答案 0 :(得分:2)
尝试使用pageinit而不是document.ready和rel =“external”。初始化页面后会触发此操作。您还可以使用其他活动,具体取决于您的需求,例如pageshow或bagebeforeshow。
$( '#aboutPage' ).live( 'pageinit',function(event){
alert( 'This page was just enhanced by jQuery Mobile!' );
});
有关jQM事件的更多信息http://jquerymobile.com/demos/1.1.1/docs/api/events.html
以下是他们对document.ready的说法:
重要提示:使用$(document).bind('pageinit'),而不是$(document).ready()
你在jQuery中学到的第一件事就是在里面调用代码 $(document).ready()函数,所以一切都会尽快执行 DOM已加载。但是,在jQuery Mobile中,Ajax用于加载 导航时每个页面的内容都放入DOM中,并准备好DOM 处理程序仅对第一页执行。每当执行代码时 加载并创建新页面,您可以绑定到pageinit事件。 此事件在本页底部详细说明。