将JavaScript注入UIWebView

时间:2012-01-09 10:04:52

标签: objective-c ios cocoa-touch uiwebview javascript-injection

我正在尝试使用stringByEvaluatingJavaScriptFromString:来更改WebView,但它并没有像我期望的那样执行。

这是代码,但这个JS不会执行。知道为什么吗?

UIWebView *wv = [UIWebView alloc] init];

NSURL *url = [[NSURL alloc] initWithString:@"http://www.google.com"];

NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];

[wv loadRequest:request];

[wv stringByEvaluatingJavaScriptFromString:@"document.write('This Works')"];

1 个答案:

答案 0 :(得分:3)

在您使用stringByEvaluatingJavaScriptFromString之前,您可能需要等待请求完成。设置wv.delegate = self;,然后像这样实施-webViewDidFinishLoad

-(void)webViewDidFinishLoad:(UIWebView *)webView {
    [webView stringByEvaluatingJavaScriptFromString:@"document.write('This Works')"];
}