在iOS 13 beta版上的WKWebView上滚动不起作用
我正在WKWebView中加载自定义HTML,并在视口中设置属性在iOS 13 beta版上的WKWebView上滚动不起作用,ios,scrollview,wkwebview,ios13,xcode11,Ios,Scrollview,Wkwebview,Ios13,Xcode11,我正在WKWebView中加载自定义HTML,并在视口中设置属性width=device width。这在iOS 12中非常有效,但在iOS 13(beta 7)中出现了滚动问题 特别是,当使用width=devicewidth时,无法滚动webview,因此部分内容不可见。只有当用户捏着缩放,然后神奇地开始滚动(水平和垂直)时,才有可能这样做 我在文档中没有找到任何关于iOS 13中对WKWebView(甚至scrollview)所做更改的证据。我错过什么了吗?或者这可能是iOS 13/Xco
width=device width
。这在iOS 12中非常有效,但在iOS 13(beta 7)中出现了滚动问题
特别是,当使用width=devicewidth
时,无法滚动webview,因此部分内容不可见。只有当用户捏着缩放,然后神奇地开始滚动(水平和垂直)时,才有可能这样做
我在文档中没有找到任何关于iOS 13中对WKWebView(甚至scrollview)所做更改的证据。我错过什么了吗?或者这可能是iOS 13/Xcode 11的一个bug 我也遇到了这个问题,因为在body的样式中添加了“overflow:hidden”。我删除了“溢出:隐藏”,仅此而已。就我而言,在阅读之后 我试试这个:
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
insertCSSString(into: webView)
}
func insertCSSString(into webView: WKWebView) {
let cssString = "body { overflow: scroll !important }"
let jsString = "var style = document.createElement('style'); style.innerHTML = '\(cssString)'; document.head.appendChild(style);"
webView.evaluateJavaScript(jsString, completionHandler: nil)
}
或者这个:
func insertCSSString(into webView: WKWebView) {
let jsString = "document.querySelectorAll('*[style]').forEach(el => el.style.overflow = 'scroll');"
webView.evaluateJavaScript(jsString, completionHandler: nil)
}
也许有帮助 你为高度设置了什么=设备高度?@Vinodh没有为高度设置任何东西谢谢,明星一号为我工作,但身体一号没有。