iOS 獲取webView載入完成後的高度
阿新 • • 發佈:2018-11-09
在開發中我們會經常遇到webView載入網頁的情況(如下圖所示)。如果webView是在UITableView中,我們如何返回webView載入完成後的高度呢?
在UIWebViewDelegate方法裡:
-(void)webViewDidFinishLoad:(UIWebView *)webView{ //HTML5的高度 NSString *htmlHeight = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"]; webView.frame = CGRectMake(0, 0, KScreenWidth, [htmlHeight floatValue]); [self.myTableView reloadData]; }
返回高度(我這裡是將webView放在tableView的Footer上的情況):
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{ // return [[self.myWebView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"] floatValue] + 30; // return [[self.myWebView stringByEvaluatingJavaScriptFromString:@"document.body.clientHeight"] floatValue] + 30; return self.myWebView.scrollView.contentSize.height; }