【发布时间】:2014-12-05 09:05:21
【问题描述】:
我正在更新我的 iOS 应用以将 UIWebView 替换为 WKWebView。但是我不明白如何使用WKWebView 实现相同的行为。使用UIWebView,我使用scalesPageToFit 来确保网页以与屏幕尺寸相同的尺寸显示(以便在不滚动的情况下显示全屏)。
我在网上找到了该解决方案,但它不起作用:
- (void)webView:(WKWebView *)webView didCommitNavigation:(WKNavigation *)navigation {
NSString *javascript = @"var meta = document.createElement('meta');meta.setAttribute('name', 'viewport');meta.setAttribute('content', 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no');document.getElementsByTagName('head')[0].appendChild(meta);";
[webView evaluateJavaScript:javascript completionHandler:nil];
}
【问题讨论】:
-
试试这个:
NSString* js = @"var meta = document.createElement('meta'); " "meta.setAttribute( 'name', 'viewport' ); " "meta.setAttribute( 'content', 'width = device-width' ); " "document.getElementsByTagName('head')[0].appendChild(meta)"; [webView stringByEvaluatingJavaScriptFromString: js];用上面的代码替换你的代码。 -
我试了一下,但结果相同(顺便说一下,WKWebView 中不存在 stringByEvaluatingJavaScriptFromString 方法,所以我保留了我的 evaluateJavaScript:completionHandler 调用
-
您找到解决方案了吗?