【发布时间】:2017-07-12 23:41:55
【问题描述】:
我正在尝试修改 WKWebView 中的页面加载比例。就我在 html 中查找而言,它正在工作。但是 WKWebview 中的实际比例并没有改变。
这是我注入脚本的方式:
let script =
"var viewport = document.querySelector(\"meta[name=viewport]\");" +
"viewport.setAttribute('content', 'width=device-width, initial-scale=0.4, user-scalable=0');" +
let userScript = WKUserScript(source: script,
injectionTime: WKUserScriptInjectionTime.atDocumentEnd,
forMainFrameOnly: true)
userContentController.addUserScript(userScript)
打印html:
webView.evaluateJavaScript("document.getElementsByTagName('html')[0].innerHTML", completionHandler: { (innerHTML, error) in
print(innerHTML)
})
HTML 结果在控制台中:
Optional(<!--<![endif]--><head>
<title>Bitcoin (BTC) $2391.84 (1.85%) | CoinMarketCap</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=0.4, user-scalable=0">
<meta name="google-site-verification" content="EDc1reqlQ-zAgeRrrgAxRXNK-Zs9JgpE9a0wdaoSO9A">
<meta property="og:type" content="website">
我问自己这是否是正确的方法。我也尝试过:let script = document.body.style.zoom = '0.8'; 和 let script = document.body.style.webkitTransform = 'scale(0.8)'; 都在规模方面工作,但是使用这种方法,this highchart 中的时间段滑块失去了它的功能。任何形式的新想法都将不胜感激。
【问题讨论】:
标签: javascript html swift cocoa wkwebview