问题:有的时候移动端在webview请求的时候,返回的内容呈现在页面很小,这是因为后台没有做手机端的屏幕适配,其实导致这样问题的根源是少了HTML5的meta
标签。在后台不做调整的前提下,我们移动端可以做如下修改:
//webView内容大小自适应
let wkUScript = WKUserScript.init(source: "var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width'); document.getElementsByTagName('head')[0].appendChild(meta);", injectionTime: .atDocumentEnd, forMainFrameOnly: true)
let wkUController = WKUserContentController.init()
wkUController.addUserScript(wkUScript)
let config = WKWebViewConfiguration.init()
config.preferences = WKPreferences.init()
config.preferences.javaScriptEnabled = true
config.preferences.javaScriptCanOpenWindowsAutomatically = false;
config.processPool = WKProcessPool.sharedProcessPool()
config.userContentController = wkUController
self.webView = WKWebView.init(frame: self.view.bounds, configuration: config)