UIWebview不同於WkWebview沒有加載進度屬性來判斷加載是否完成了
它有個回調方法
- (void)webViewDidFinishLoad:(UIWebView *)webView;
這個方法的蘋果官方文檔關於它的說明也是含糊的
- (void)webViewDidFinishLoad:(UIWebView *)webView |
|||
Description |
Sent after a web view finishes loading a frame. |
||
Parameters |
|
||
Availability |
iOS (2.0 and later) |
||
Declared In |
|||
Reference |
通過測試,發現finishLoad方法走了,並非加載完了。
結合js方法或許是更加完美的,參考這兩篇文章
http://www.w3school.com.cn/ajax/ajax_xmlhttprequest_onreadystatechange.asp
http://www.java2s.com/Book/JavaScript/DOM/document_readyState.htm
NSString *readyState = [webView stringByEvaluatingJavaScriptFromString:@"document.readyState"]; BOOL complete = [readyState isEqualToString:@"complete"]; if (complete) { [self completeProgress]; }