我正在为学校做一个期末项目,但遇到了一个让我困惑的错误。我有一个 jQM 页面,其中包含两个 div(详细内容、可排序内容),一个用于保存报告 A,一个用于保存报告 B。我已将 jQM 哈希处理演示改编为 .show()
正确的报表 div 和 .hide()
基于查询字符串“选择”的其他报表 div。
只要报告页面是浏览器中物理加载的页面,这似乎就可以正常工作。不幸的是,当直接加载另一个页面(通过 URL)并单击顶部的“报告”按钮时,加载报告页面后不会加载任何内容 div(尽管控制台日志确认该事件正在被触发)并且如果单击“选择报告”按钮后,jQueryMobile 弹出窗口 wiget 的呈现出现奇怪的问题。然后,当访问任何其他页面时,会发生许多与系统正确跟踪事件页面有关的奇怪故障。
以前有人遇到过此类问题吗?我希望这是我错过的一些简单的东西,它让我发疯!
如果需要任何进一步的信息,请告诉我
最佳答案
您正在将事件绑定(bind)到 $('document')
它将尝试搜索 <document>
标签而不是文档本身。请删除它周围的引号。
此外,在您的代码中您使用 $(document).ready()
在页面更改时。然而,$(document).ready
只会在页面加载开始时触发一次(在 DOM 加载完成时)。您应该尝试使用 pageinit
事件替代:
$(document).bind("pagechange", function () {
$(document).on('pageinitfunction() {
...
http://api.jquerymobile.com/pageinit/
ready
和有什么区别一个pageinit
?
关于javascript - jQuery Mobile - 哈希处理以及后续的 jQuery.show() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25085020/