jQuery Mobile 不加载新页面脚本

标签 jquery django jquery-mobile django-templates transition

将 jQuery Mobile 与 Django 结合使用:在页面转换期间,基本脚本似乎加载正常,但从一个页面到下一个页面,标题下的新页面脚本不会在浏览器中加载。

更具体地说:

  1. 我通过输入网址加载主页,一切正常。
  2. 我通过单击主页中的链接加载下一页,然后 DOM 加载,但与页眉中的页面关联的脚本, 不要加载。
  3. 如果我刷新此页面,或者输入此页面的 URL 直接在浏览器中(绕过页面转换),页面 按应有的方式加载脚本。

我知道jquery mobile尝试使用ajax实现页面转换,但我希望我可以将脚本保留在页眉/页脚中。我不想将脚本放在 <div data-role="page" >

最佳答案

这是因为 jQuery Mobile 仅加载 DOM 中第一个 data-role="page" 元素内的代码。

您可以选择以下几个选项来解决此问题:

  1. 您可以将页面特定的 JS 放入 data-role="page" 元素中,这样当 jQuery Mobile 通过 AJAX 加载页面时就会加载该 JS。
  2. 您可以将所有代码放在一个 JS 文件中,并将其包含在网站的每个页面中,它只会在全页刷新时加载,但这样您网站的所有代码将始终可用(在缩小和压缩之后,您确实必须有大量代码才能降低效率)。

我确信还有其他方法,但这里有一些我已经为我工作过的方法。

关于jQuery Mobile 不加载新页面脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9418309/

相关文章:

javascript - 如何在 javascript 中使用 setTimeout 考虑延迟

输入文本框的 jQuery 悬停事件不起作用

python - 当 Django 似乎正在搜索正确的路径时如何解决 'TemplateDoesNotExist' 错误

python - 为什么 Django 返回 Django object is not iterable 错误?

javascript - JQuery 手机 : How to start the page x pixels scrolled down?

jquery - CSS定位元素

javascript - 在 jquery 中第二次单击时执行函数

javascript - 查找 Canvas 中对象的位置

python - django heroku foreman 启动错误代码 1

jquery(移动): use flip switch to change theme of collapsible cotent