我有一个UIWebView,HTML初始化后从缓存加载 -file :
UIWebView *tempWebView = [[UIWebView alloc] init];
tempWebView.delegate = self;
[self.view addSubview:tempWebView];
[tempWebView loadHTMLString:htmlString baseURL:baseURLString];
比webViewDidFinishLoad:(UIWebView *)webView我试图执行的javascript:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[[webView stringByEvaluatingJavaScriptFromString:jsString] floatValue];
// other manipulations...
[webView removeFromSuperview];
}
问题是HTML-code 具有外部依赖项,例如:
<link rel="stylesheet" href="css/book.css" type="text/css"/>
而且有这样的印象,就是这个*.css来不及加载,所以javascript-code返回了错误的值。如果执行webViewDidFinishLoad:(UIWebView *)webView延迟的内容(假设 2.0f 秒),一切都会好起来的。
但是这种延迟在不同的设备和情况下可能会有所不同。那么如何确定所有依赖项都已加载以执行我的javascript代码?