【问题标题】:jquery Pageinit called multiple times多次调用jquery Pageinit
【发布时间】:2015-08-19 16:01:50
【问题描述】:

我是 jQuery 开发的新手。我正在创建一个页面应用程序。从一页导航到另一页时,我正在调用 pageinit 方法。当我在两个屏幕之间来回导航时,我看到页面 init 被多次调用。

$(document).on("pageinit", '#docPage', function(event) {
               home.doc.init();
               });

即使在导航返回时,我也会调用 unbind 事件。

 $('#BackButton').on('tap', function(event) {
                       event.preventDefault();

                       $.mobile.changePage("homepage.html", {
                                           transition: "fade",
                                           reverse: false,
                                           changeHash: false
                                           });
                       teardown();
                       });
};

teardown(){

home.doc.unbindEvents();
}

谁能指导我在单个页面应用程序中导航的最佳实践。提前致谢。

【问题讨论】:

  • 为什么这个标签是ios?
  • 我正在为 iPad 开发这个应用程序。我想知道如果该应用是为 iOS 平台开发的,是否遵循任何标准
  • 你在使用 jQuery Mobile 和its pageinit event吗?
  • 是的,我正在使用 jQuery Mobile Pageinit 方法

标签: javascript jquery ios jquery-mobile


【解决方案1】:

这可能是因为pageinit 侦听器被分配了不止一次 - 每次“导航”到不同的页面时,请检查它是否被重新添加。

您的解除绑定无法按预期工作。试试改匿名函数$(document).on("pageinit", '#docPage', function(event) { home.doc.init(); })

到之前在代码中声明的命名函数。这可以提供一些见解。

【讨论】:

    猜你喜欢
    • 2012-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多