我是jQuery开发的新手。我正在创建一个页面应用程序。从一页导航到另一页时,我正在调用pageinit方法。当我在两个屏幕之间来回导航时,我看到页面初始化被多次调用。
$(document).on("pageinit", '#docPage', function(event) {
home.doc.init();
});
即使在导航时,我也调用取消绑定事件。
$('#BackButton').on('tap', function(event) {
event.preventDefault();
$.mobile.changePage("homepage.html", {
transition: "fade",
reverse: false,
changeHash: false
});
teardown();
});
};
teardown(){
home.doc.unbindEvents();
}
任何人都可以指导我在单个Page应用程序中导航的最佳实践。提前致谢。
最佳答案
这可能是由于pageinit
侦听器被分配了不止一次的原因-每次“导航”到另一个页面时,请确保没有重新添加该侦听器。
您的解除绑定无法按预期进行。尝试更改匿名函数$(document).on("pageinit", '#docPage', function(event) { home.doc.init(); })
到先前在代码中声明的命名函数。这可以提供一些见识。
关于javascript - jQuery Pageinit多次调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32100510/