【问题标题】:jquery mobile rel="external" transitionjquery mobile rel="external" 转换
【发布时间】:2012-08-09 10:46:36
【问题描述】:

对于我使用 jquery mobile 构建的 phonegap 应用程序,如果我想转到另一个页面,例如如果我想从 index.html 转到 users.html,我会使用 rel="external"。

我使用此选项是因为否则我无法在 users.html 中使用 javascript 函数。例如,它不会执行 document.ready 中的内容。但是.. 如果我使用 rel="external" 那么它会工作..

问题是,如果我使用 rel="external" 转换(幻灯片)将不再起作用。有人知道为什么会这样吗?

【问题讨论】:

    标签: jquery jquery-mobile


    【解决方案1】:

    尝试使用 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 事件。 此事件在本页底部有详细说明。

    【讨论】:

    • pageinit,bind 是正确的方法,其次将函数放在外部 js 中也很有用 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 2013-04-09
    • 1970-01-01
    • 2013-10-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多