使用 jQuery mobile 从历史堆栈中排除 bootstrap.html 或 index.html
我正在使用 jQuery mobile 和 PhoneGap 创建一个移动应用程序。
当应用程序启动时,首页将被动态加载。显示的首页取决于某些状态,例如应用程序是否已配置。
这就是为什么我有一个 bootstrap.html,它只加载所有代码而没有正文。然后,一些逻辑调用 jQuery.mobile.changePage 来加载所需的首页。
问题在于,空的 bootstrap.html 将被放入应用程序的历史堆栈中。当用户按下后退按钮时,他或她将转到这个空的引导页面。这是不受欢迎的行为。
是否可以使用 jQuery mobile 从历史堆栈中排除此引导程序文件?
I'm creating a mobile application using jQuery mobile and PhoneGap.
When the application is started, the frontpage will be loaded dynamically. What frontpage will appear depends on certain states, for example whether the app has been configured.
This is why I have a bootstrap.html, which only loads all code and has no body. Some logic then calls jQuery.mobile.changePage
to load the desired frontpage.
The issue is that bootstrap.html, which is empty, will be put in the application's history stack. When the user then presses the back button, he or she will go to this empty bootstrap page. This is undesirable behavior.
Is it possible to exclude this bootstrap file from the history stack with jQuery mobile?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果不进一步研究细节,您将必须在加载无论什么页面的第一个changePage调用时禁用“散列”。
如果您检查 JQM.js(RC1.0 line#3041)中的changePage 函数,会发现有许多指定的选项,您可以在changePage 调用中设置这些选项。如果给定的选项不够,您还可以添加选项。
尝试在您的changePage调用中设置选项
changeHash:false
是否有效(我想应该如此)。应该是这样的:这有效吗?
Without looking into further detail, you would have to disable "hashing" on your first changePage call loading the whatever-page.
If you check the changePage function in JQM.js (RC1.0 line#3041), there are a number of options specified, which you can set on your changePage call. You can also add options if those given don't suffice.
Try if setting option
changeHash:false
in your changePage call will work (I guess it should). Should be something like this:Does this work?