我目前正在构建一个简单的 jQuery Mobile 应用程序。目前,如果我想在页面加载之前或之后做一些事情,我使用以下调用挂钩:
显示页面时(例如插入数据/模板):
$(window).on('pageshow', function() {
if ($('#pageId').length > 0) {
doStuff();
}
});
如果用户移动到新页面(并且我想保存一些值):
$(document).delegate('#pageId #buttonNext', 'click', function() {
doStuff();
});
我有两个问题:
有没有更好、更优雅的方法来做到这一点(我相信有)?在移动设备(尤其是 iOS Safari)上,每次在 safari 关闭后重新打开应用程序时,都会再次pageshow
触发该方法,例如重新进入已经完全构建的页面。有没有办法防止这种行为?