与 Jquery Mobile 的电话差距不会打开内部链接
Posted
技术标签:
【中文标题】与 Jquery Mobile 的电话差距不会打开内部链接【英文标题】:Phone Gap with Jquery Mobile won't open internal links 【发布时间】:2012-02-03 05:49:30 【问题描述】:我有一个带有 jquery mobile 的电话间隙应用程序,我可以让外部链接工作和单页导航工作,但我无法在我的应用程序中打开另一个文件。所有文件都位于 www 文件夹中。错误消息是“无法加载网页并出现错误:在此服务器上找不到请求的 URL。如果我注释掉 jquery-1.6.4.min.js 文件,它将起作用,但这不是一个好的解决方案。我已经尝试了 rel="external" 和其他一些我通过谷歌搜索看到的东西,但似乎没有任何效果
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0,
user-scalable=no;" />
<meta charset="utf-8">
<link rel="stylesheet" href="include/jquery.mobile-1.0.min.css" />
<script src="include/jquery-1.6.4.min.js"></script>
<script src="include/jquery.mobile-1.0.min.js"></script>
<script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script>
<script type="text/javascript">
function onBodyLoad()
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady()
//do something
</script>
</head>
<body onload="onBodyLoad()">
<div data-role="page" id="manage">
<div data-role="content" id="inputs">
<a href="about.html">About</a>
</div>
</div>
</body>
</html>
【问题讨论】:
【参考方案1】:确保更新您的 PhoneGap 清单。查找 PhoneGap.plist,打开它并查找 ExternalHosts。您需要将网址一一添加,或者您可以简单地添加“*”。这将允许在应用程序中使用所有 url。 PhoneGap 默认屏蔽所有 url。
【讨论】:
我试过了,但没有用。如果我取出 jquery 脚本引用并直接使用 phonegap 就没有问题 您是否也尝试过混淆 javascript 包含的顺序?在我自己的文件中,我有这个:<link rel="stylesheet" href="js/jquery.mobile.structure-1.0.1.min.css" /> <script type="text/javascript" charset="utf-8" src="js/phonegap-1.3.0.js"></script> <script src="js/jquery-1.7.1.min.js"></script> <script src="js/jquery.mobile-1.0.1.min.js"></script>
以上是关于与 Jquery Mobile 的电话差距不会打开内部链接的主要内容,如果未能解决你的问题,请参考以下文章
在jquery mobile中打开面板时如何防止页面被拖动?
在多个页面上打开相同的弹出对话框 Jquery Mobile 1.4.5
从 JQuery Mobile 到 PhoneGap / Cordova