jQuery Mobile 页面丢失 JavaScript 文件

2024-02-05

我在使用 jQuery Mobile 时遇到了真正的问题,我尝试修复但失败了:-(

我有一个导航来浏览我的应用程序,如果我单击与某个网站相关的链接,该网站有一个用于执行某些功能的 .js 文件,则该 .js 文件会丢失。如果我查看 firebug,我在中看不到我指定的“get-marker-id.js”<head>-我的部分<html>-代码。如果我刷新页面,.js 文件就会出现,一切都很好,所有功能都已找到并且运行良好。

作为一种解决方法,我想出了给<a>- 导航标签rel=external属性解决了这个问题,因为站点是完全加载的,而不是通过 ajax 调用加载的。

现在我想知道是否可以通过更好的解决方法来解决问题?因为如果我使用"rel=external"如果我已将页面保存到主屏幕,移动 Safari 会打开一个新选项卡,而这是我的客户不想要的 =(。我非常感谢您的帮助:-)


如果我们假设我们从简单开始单页模板 http://jquerymobile.com/demos/1.0/docs/pages/page-template.html在 jquery mobile 中,遗漏了一些关键信息。如果您希望拥有全局可用的函数和变量,并且能够更改框架的默认值,则需要在 jquery.js 和 jquerymobile.js 之间添加自定义脚本,如其上所示全局配置页面 http://jquerymobile.com/demos/1.0/docs/api/globalconfig.html.

<head>
    ...
    <script src="jquery.js"></script>
    <script src="custom-scripting.js"></script>
    <script src="jquery-mobile.js"></script>
    ...
</head>

当您使用基于 ajax 的内置导航从一个页面转到下一个页面时,custom-scripting.js 中的所有内容仍然可供您使用,甚至可以用于在页面进入时对其进行操作。

但是,如果您将脚本放入<div data-role="page">仅当该页面就位时,您才有权执行。一旦您导航到另一个页面,该初始页面将从 DOM 中删除,从而从您的脚本中删除。因此,您需要在每个页面上调用脚本或将其放入 custom-script.js 中。使用全局脚本将是一个性能更高的选项,因为移动设备中的 http 请求是导致大部分速度下降的原因。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery Mobile 页面丢失 JavaScript 文件 的相关文章

随机推荐