Objective c 将JavaScript注入UIWebView
我试图使用Objective c 将JavaScript注入UIWebView,objective-c,ios,cocoa-touch,uiwebview,javascript-injection,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 allo
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')"];
在使用
stringByEvaluatingJavaScriptFromString
之前,您可能必须等待请求完成。设置wv.delegate=self然后像这样实现-webViewDidFinishLoad
-(void)webViewDidFinishLoad:(UIWebView *)webView {
[webView stringByEvaluatingJavaScriptFromString:@"document.write('This Works')"];
}
在我尝试此操作后,网络视图变为空白,我在任何地方都看不到“此操作有效”。@Andrew Barinov,如果需要停止,请使用布尔标志。如果你想在谷歌搜索栏中输入文本,document.write不是你想要的。奇怪的是,它对我来说很有效。您的委托方法被正确调用了,对吗?是的,我在委托方法中放入了一个NSLog,我看到它在控制台上打印。@user792677我实际上是在试图修改用户看到的页面结构,而不是执行搜索。