wkwebView 通过scrollHeight获取高度不准确处理方案

在webView中先设置下列HTML代码,让webView能完美适配富文本的内容,之后取到的高度就是准确的高度。

 NSString *str = [model.getModel stringByAppendingString: @"<html><head><meta content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0\" name=\"viewport\"><style type=\"text/css\">img{display: inline-block;max-width:100%}</style></head><body></body></html>"];
    [self.webView loadHTMLString:str baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]bundlePath]]];

获取wkwebView准确高度代码:

//加载完成之后调用
-(void)webView:(WKWebView *)webView didFinishNavigation:(null_unspecified WKNavigation *)navigation{

    self.webView.scrollView.scrollEnabled = NO;
//    [webView evaluateJavaScript:@"document.getElementsByTagName('body')[0].style.webkitTextSizeAdjust= '200%'" completionHandler:nil];
    [webView evaluateJavaScript:@"document.documentElement.scrollHeight"completionHandler:^(id _Nullable result,NSError * _Nullable error){
        SSLog(@"scrollHeight高度:%.2f",[result floatValue]);
        if (self.webHeight <= 0) {
            self.webHeight = [result floatValue];//获取的精准高度
            //刷新方法
        }
    }];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,135评论 1 32
  • WKWebView 是苹果在 WWDC 2014 上推出的新一代 webView 组件,用以替代 UIKit 中笨...
    Aiana阅读 4,621评论 1 8
  • 1、WKWebView 白屏问题WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebV...
    无名感恩阅读 2,160评论 0 3
  • 转载:http://www.cnblogs.com/NSong/p/6489802.html 导语 WKWebVi...
    李小威阅读 4,876评论 8 9
  • 对你来说如果将一份在存储手机里的文件传到电脑上是不是so easy?假设如果将这个任务交给平时不怎么用电脑、手机的...
    心随逸飞阅读 478评论 0 0