如何在Xcode项目中包含jquery库?

时间:2013-12-30 10:08:50

标签: javascript jquery html objective-c ios6

我有一个UIWebView,它从资源包中加载本地.html文件。 一切都工作正常,除了.html文件中写的Javascript代码根本不工作。我没有.js文件来显示.html文件中的弹出视图。而不是它,JS代码写在.html文件中。

以下是我的xcodeproject的一些屏幕截图: -

enter image description here

enter image description here

通过浏览谷歌所有我可以收集的是,因为我根本没有在我的应用程序中使用网络连接,(我在本地加载所有内容)jQuery库的src没有被下载。

所以有些东西可以替代 .html文件中的以下行

“src =”// ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">“

或者我的方法是错误的吗?

修改

如果这有帮助: -

我也试过在我的MAC里面的safari中打开那些.html文件。 。 JS代码也没有在那里工作。

好吧。 。 。

我试图在这里完成一些不可能的事情吗?...:D

2 个答案:

答案 0 :(得分:2)

您需要下载jquery 本地,并将您的本地jquery文件指向<script>标记

例如:本地jquery路径

/my_local_folder/js/jquery/jquery.min.js

更改

<script src="ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">

宽度本地jquery文件

<script src="my_local_folder/js/jquery/jquery.min.js">

答案 1 :(得分:0)

取自http://www.altinkonline.nl/tutorials/xcode/uiwebview/load-jquery-in-uiwebview/

将Web视图的委托设置为某个对象后,您可以修改

- (void)webViewDidFinishLoad:(UIWebView *)webView {

方法体如下

如果从CDN加载,你会做类似的事情:

NSString *jqueryCDN = @"http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js";
NSData *jquery = [NSData dataWithContentsOfURL:[NSURL URLWithString:jqueryCDN]];
NSString *jqueryString = [[NSMutableString alloc] initWithData:jquery encoding:NSUTF8StringEncoding];
[webView stringByEvaluatingJavaScriptFromString:jqueryString];

但是如果你在bundle中本地保存了一个最小化的JQuery文件,你可以这样做:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Jquery" ofType:@"js" inDirectory:@""];
NSData *fileData = [NSData dataWithContentsOfFile:filePath];
NSString *jsString = [[NSMutableString alloc] initWithData:fileData encoding:NSUTF8StringEncoding];
[webView stringByEvaluatingJavaScriptFromString:jsString];