iOS 获取webView加载完成后的高度
在开发中我们会经常遇到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; }