当前位置: 代码迷 >> 综合 >> swift-从零开始(3)WKWebView的UI交互问题
  详细解决方案

swift-从零开始(3)WKWebView的UI交互问题

热度:48   发布时间:2024-02-01 17:49:57.0

1.自适应高度

// 加载结束func webView(_webView:WKWebView, didFinish navigation:WKNavigation!) {1. 自适应高度:webView.evaluateJavaScript("document.body.scrollHeight") {[weakself] result,_inif 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 = falsewebView.backgroundColor = .clearwebView.scrollView.backgroundColor = .clearif #available(iOS 11.0, *) {webView.scrollView.contentInsetAdjustmentBehavior = .never}else{self.automaticallyAdjustsScrollViewInsets = false}}