【发布时间】:2013-04-01 23:13:45
【问题描述】:
我对 jQuery Mobile(和 Web 开发)还不太熟悉,并且有一些历史问题。
首先,上下文:
- 我必须使用 jQuery Mobile
- 我使用的是单页模板。
- 我现在有大约 10 个网页
- 在每个页面中,我都有一个加载菜单的脚本(menuHeader.html + menuHeader.js)。
- 菜单在“pagecreate”事件中加载
问题是,我正在页面上“玩”(填写一些字段,使用列表中的 JQM 搜索字段等)。
当我使用 $.mobile.changePage 转到另一个页面时,我可以返回到第一页:我得到了页面的确切状态,就像我离开它时一样。 但是,如 JQM 文档中所述,$.mobile.changePage 仅加载另一个页面的第一个 data-role=page。
=>因此,我的下一页上没有任何菜单。
另一种方法是使用我的新 URL 设置 location.href 并在每个页面中加载我的脚本(这是我的第一个想法)。 如果我这样做,菜单会在每一页上加载,但如果不完全重新加载,我就无法返回上一页。
=> 这意味着我的表单和列表是空的,等等。
=> 另外,如果我在 pagecreate 或 document.ready 上调用 Web 服务,Web 服务似乎又被调用了一次。目前这没什么大不了的,但将来可能会导致性能问题。
是否有一种方法可以在每个页面上加载脚本并能够正确使用历史导航(无需重新加载整个前一页)? 一种“超级”的changePage?
我最后的解决方案是在每个页面中复制我的菜单,但我真的很想避免这种情况,因为我不想在颜色、标签或任何必须更改的情况下修改每个页面。
我会很感激你的帮助(这个问题让我发疯了一个星期)......
提前致谢!
斯蒂芬
【问题讨论】:
标签: jquery jquery-mobile