2013-03-28 87 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