nic*_*oJN 4 cocoa-touch ios wkwebview
在我的应用程序中,我需要获取网页的高度WKWebView.所以我使用下面的代码.
webView.evaluateJavaScript(("document.height"), completionHandler: { contentHeight,error in
print(contentHeight)
})
Run Code Online (Sandbox Code Playgroud)
在iOS 9之前,这会正确返回网页高度.但在iOS 10中,contentHeight总是如此nil.
我已经定了
webView.scrollView.scrollEnabled = false
Run Code Online (Sandbox Code Playgroud)
并且Web视图位于UITableViewCell.
的高度webView和的UITableViewCell是可变的.Web视图上有一个顶部和底部约束以适合单元格.
当我获得网页高度时,我希望它反映在单元格的高度上.
试试这个:
let javascriptString = "" +
"var body = document.body;" +
"var html = document.documentElement;" +
"Math.max(" +
" body.scrollHeight," +
" body.offsetHeight," +
" html.clientHeight," +
" html.offsetHeight" +
");"
webView.evaluateJavaScript(javascriptString) { (result, error) in
if error == nil {
if let result = result, let height = JSON(result).int {
self.htmlContentHeight = CGFloat(height)
self.resetContentCell()
}
}
}
Run Code Online (Sandbox Code Playgroud)
PS.WKWebiew呈现问题:在iOS 10中无法正确呈现 WKWebView
| 归档时间: |
|
| 查看次数: |
6472 次 |
| 最近记录: |