2013-03-28 78 views
0

我可能會用完全錯誤的方式解決這個問題,但我試圖通過儘可能少的更改將基於Web的應用程序遷移到Android應用程序。JQuery函數在Android應用程序開發中不起作用

我已經設置了我的Android應用程序來從HTML頁面填充,這在我最初的基本示例中工作正常。

但是,當我嘗試添加任何JQuery函數時,這些失敗。

我有以下代碼:

<!DOCTYPE html> 
<html> 

    <head> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
     <script type="text/javascript"> 
      alert('outside doc ready'); 
      $(document).ready(function() { 
       alert('inside JQuery'); 
      }); 
     </script> 
    </head> 

    <body>Some text</body> 

</html> 

在瀏覽器中呈現,我得到兩個警報消息。 通過我的三星Galaxy S3上的Android應用程序呈現,我只需獲得第一個「外部文檔就緒」警報。 我之前已經包含了一個JQuery Mobile鏈接,但它沒有什麼區別,我的理解是,它更多的是一個UI功能設置。

任何幫助將不勝感激。如果需要進一步的信息,請讓我知道,我會編輯問題。

+0

在許多應用程序中,如果JavaScript警報不止一次被調用,那麼有時瀏覽器會告訴您「阻止此頁面創建其他對話框」,那麼如果您按下ok,則下次沒有警報出現 – 2013-03-28 10:29:36

+0

感謝您的提示。但是,如果我刪除$(document).ready包裝器,並且只留下第二個提醒,那麼它會在應用程序中成功啓動。 – JonRed 2013-03-28 10:34:31

回答

2

要從外部加載jQuery,必須將Internet權限添加到Android Manifest。

+0

嗨。我向Android Manifest XML添加了,並且可以確認它是否有效。加1並獲得批准的答案。謝謝。 – JonRed 2013-04-03 09:01:15

0

我有這個工作。

由於我希望有人可以解釋的原因,JQuery沒有被加載。我手動保存了JQuery庫,並將其添加到測試html頁面旁邊的「資產」文件夾中。 然後,我只是修改了包括線...

<script type="text/javascript" src="jquery.min.js"></script> 

和頁面開始工作。

我懷疑這裏有一些安全限制,因爲將第三方或外部Javascript文件包含到在本地環境中運行的應用程序可能有點不妥。

如果您花時間閱讀,謝謝。

+0

您的手機中可能沒有互聯網連接/ AVD – 2013-03-28 12:23:40

+0

手機確實有互聯網連接。我想這可能需要一段時間才能加載,因此在函數被調用的時候不會進入內存。 – JonRed 2013-03-28 13:19:45