Ios 使用UIWebView
我有一个Ios 使用UIWebView,ios,xcode,uiwebview,delegates,dependencies,Ios,Xcode,Uiwebview,Delegates,Dependencies,我有一个UIWebView,它在初始化后从缓存加载HTML-文件: UIWebView *tempWebView = [[UIWebView alloc] init]; tempWebView.delegate = self; [self.view addSubview:tempWebView]; [tempWebView loadHTMLString:htmlString baseURL:baseURLString]; 而不是在webviewdiffinishload:(UIWebView
UIWebView
,它在初始化后从缓存加载HTML
-文件:
UIWebView *tempWebView = [[UIWebView alloc] init];
tempWebView.delegate = self;
[self.view addSubview:tempWebView];
[tempWebView loadHTMLString:htmlString baseURL:baseURLString];
而不是在webviewdiffinishload:(UIWebView*)webView
中,我正在尝试执行javascript
:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[[webView stringByEvaluatingJavaScriptFromString:jsString] floatValue];
// other manipulations...
[webView removeFromSuperview];
}
问题在于HTML
-代码具有外部依赖性,例如:
<link rel="stylesheet" href="css/book.css" type="text/css"/>
有这样一种印象,这个*.css
没有时间加载,所以javascript
-代码返回了一个错误的值。如果延迟执行webViewDidFinishLoad:(UIWebView*)webView
的内容(假设为2.0f秒),则一切正常
但这种延迟在不同的设备和情况下可能会有所不同。那么,我如何确定已经加载了所有依赖项来执行我的javascript
-code?在
WebViewDidLoad
- (void)webViewDidStartLoad:(UIWebView *)webView
{
[[webView stringByEvaluatingJavaScriptFromString:jsString] floatValue];
// other manipulations...
}
它可能有助于延迟加载,正如您讨论的延迟加载一样,我不需要确定是否加载了所有依赖项,并在此之后执行js。