iOS中WKWebView与Safari View Controller的全面解析
1. 导航时更改网页内容模式
在导航过程中,若要更改特定网页的内容模式,可使用 webView(_:decidePolicyFor:preferences:decisionHandler:) 方法。该方法的第三个参数 preferences 是一个 WKWebpagePreferences 对象,这是一个简单的值类。可以将其 preferredContentMode 属性设置为 .desktop 或 .mobile ,然后将修改后的对象作为第二个参数传入 decisionHandler 调用中。
自 iOS 14 起, preferences 对象还有另一个用途,即启用或禁用 JavaScript。可根据需要设置其 allowsContentJavaScript 属性,这将按页面逐个切换 JavaScript 的开关。需要注意的是,此设置仅适用于从加载内容中获取的 JavaScript;而通过代码注入到页面中的 JavaScript,即使该属性为 false 也仍然有效。
在页面加载(或加载失败)时,还有几个 WKNavigationDelegate 方法会发出通知。通常情况下,会按以下顺序接收这些方法:
- webView(_:didStartPr
超级会员免费看
订阅专栏 解锁全文
9859

被折叠的 条评论
为什么被折叠?



