与 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 包含的顺序?在我自己的文件中,我有这个:&lt;link rel="stylesheet" href="js/jquery.mobile.structure-1.0.1.min.css" /&gt; &lt;script type="text/javascript" charset="utf-8" src="js/phonegap-1.3.0.js"&gt;&lt;/script&gt; &lt;script src="js/jquery-1.7.1.min.js"&gt;&lt;/script&gt; &lt;script src="js/jquery.mobile-1.0.1.min.js"&gt;&lt;/script&gt;

以上是关于与 Jquery Mobile 的电话差距不会打开内部链接的主要内容,如果未能解决你的问题,请参考以下文章

在jquery mobile中打开面板时如何防止页面被拖动?

jQuery-Mobile可折叠slideDown效果

在多个页面上打开相同的弹出对话框 Jquery Mobile 1.4.5

从 JQuery Mobile 到 PhoneGap / Cordova

单击打开 jQuery Mobile 面板小部件时的 Google 地图指针

JQuery Mobile 应用程序,使用 HTML 5 进行移动呼叫