swift-从零开始WKWebView的UI交互问题
Posted 火海夕
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift-从零开始WKWebView的UI交互问题相关的知识,希望对你有一定的参考价值。
1.自适应高度
// 加载结束
func webView(_webView:WKWebView, didFinish navigation:WKNavigation!)
1. 自适应高度:
webView.evaluatejavascript("document.body.scrollHeight") [weakself] result,_in
if let tempHeight:Double= resultas?Double
self?.maximumHeightConstraint.constant=CGFloat(tempHeight)
2. 禁用缩放功能:
let jsForbiddenZooming = "var script = document.createElement('meta');script.name = 'viewport';script.content='width=device-width, initial-scale=1.0,maximum-scale=1.0, minimum-scale=1.0, user-scalable=no';document.getElementsByTagName('head')[0].appendChild(script);"
webView.evaluateJavaScript(jsForbiddenZooming, completionHandler:nil)
3. 禁用长按选择和复制功能:
webView.evaluateJavaScript("document.documentElement.style.webkitTouchCallout='none';", completionHandler: nil)
webView.evaluateJavaScript("document.documentElement.style.webkitUserSelect='none';", completionHandler: nil)
4. 解决 webview内容下移的问题:
override func viewDidLoad()
super.viewDidLoad()
webView.isOpaque = false
webView.backgroundColor = .clear
webView.scrollView.backgroundColor = .clear
if #available(ios 11.0, *)
webView.scrollView.contentInsetAdjustmentBehavior = .never
else
self.automaticallyAdjustsScrollViewInsets = false
以上是关于swift-从零开始WKWebView的UI交互问题的主要内容,如果未能解决你的问题,请参考以下文章
iOS Swift5.0 WKWebView使用JS与Swift交互
swift 笔记:iOS与JavaScript的交互(三):WKWebView 3. WKUiDelegate - 4 - 3新建WKWebView的时候传入WKConfig:
swift 笔记:iOS与JavaScript的交互(三):WKWebView 2.显示加载进度
swift 笔记:iOS与JavaScript的交互(三):WKWebView 3. WKUiDelegate - 7.3
swift 笔记:iOS与JavaScript的交互(三):WKWebView 3. WKUiDelegate - 7.1确立暗号
swift 笔记:iOS与JavaScript的交互(三):WKWebView 3. WKUiDelegate - 4 - 1 loadUserScrip()