JavaScript文件未加载并且stringByEvaluatingJavaScriptFromString也未执行?

问题描述:

我有我在哪里下载从服务器的HTML文件,并显示在uiwebview它的应用程序,JavaScript文件未加载并且stringByEvaluatingJavaScriptFromString也未执行?

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask ,YES); 
NSString *documentsDirectory = [paths firstObject]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:[dictionary valueForKey:@"htmlfilename"]]; 

NSError *err; 
NSString *html = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&err]; 

[self.webview loadHTMLString:html baseURL:[NSURL fileURLWithPath:path]]; 

这样,之后在Didfinishload我加载它在我的应用程序包中添加像一个JS文件这

NSString *javaScript=[NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"foo" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]; 

[webview stringByEvaluatingJavaScriptFromString:javaScript]; 

之后,点击一个按钮,我呼吁stringByEvaluatingJavaScriptFromString,但它不工作。即使这个JavaScript文件本身没有加载。有人可以指导我吗?

+0

你应该使用JavaScript的Swift或Objective C桥架构或库为此,PayUMoney使用Webview –

+0

你能分享foo.js的内容吗?也许这个代码只是声明函数,但不能调用它们? –

+0

如果你解释更多,你可能会得到更好的答案。 “它不起作用”并没有告诉我们很多。你说“那个JavaScript文件本身没有加载”,但你怎么知道?我假设你正在讨论按钮按下加载的第二个JavaScript文件。但是你不显示那个代码。你试图确定究竟出了什么问题? – fishinear

您应该尝试使用JavaScriptCore Framework在Native iOS中使用JavaScript。这个框架允许访问WebKit的JavaScript引擎。早些时候,这个框架支持MAC,但现在它支持iOS,并支持swift/objective-c和javascript之间的互操作性。有关更多参考,请阅读下面的链接。

https://www.raywenderlich.com/124075/javascriptcore-tutorial

这是基于对你的问题的理解我的想法。但如果你有更多的细节,我已经尝试提供其他解决方案。

快乐编码!