Create sync version
UIWebView javascript method is sync type.
On the other hand, WKWebView evaluateJavaScript:completionHandler: is async type.
Actually, we can get the result from callback method.
But, sometimes need sync type, waiting UI etc…
- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)javascript {
__block NSString *res = nil;
__block
BOOL
finish = NO;
[self evaluateJavaScript:javascript completionHandler:^(NSString *result, NSError *error){
res = result;
finish = YES;
}];
while
(!finish) {
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1]];
}
return
res;
}
|
|
本文介绍了一种在WKWebView中实现JavaScript同步调用的方法。通过使用`evaluateJavaScript:completionHandler:`,文章详细展示了如何等待JavaScript执行结果并返回,这对于需要同步行为的应用场景非常有用。
1748

被折叠的 条评论
为什么被折叠?



