12期_WK_WKPreferences

2023-11-11  本文已影响0人  萧修

WKPreferences,iOS8推出,用于WKWebView,其定义了网页的偏好设置,具备以下功能

@available(iOS 8.0, *)
open class WKPreferences : NSObject, NSSecureCoding {
     /**
     最小字体大小 当将javaScriptEnabled属性设置为NO时,可以看到明显的效果.默认为0
     */
    open var minimumFontSize: CGFloat
    
    /**
     是否不经过用户交互自动打开窗口iOS,默认NO
     */
    open var javaScriptCanOpenWindowsAutomatically: Bool
    
    /**
     是否允许检测欺诈网站,默认YES
     */
    @available(iOS 13.0, *)
    open var isFraudulentWebsiteWarningEnabled: Bool
    
    /**
     web打印时是否打印背景,默认NO
     */
    @available(iOS 16.4, *)
    open var shouldPrintBackgrounds: Bool

     /*!
     如果tabFocusesLinks为YES,则tab键将聚焦链接和表单控件,Option键暂时反转此首选项
     一个布尔值,指示是否禁用文本交互
     */
    @available(iOS 14.5, *)
    open var isTextInteractionEnabled: Bool

    /**一个布尔值,指示WebKit是否会应用内置的变通方法(怪癖),提高与某些已知网站的兼容性。您可以禁用站点特定的怪癖 来帮助测试你的网站没有这些变通方法。默认开启YES。
     */
    @available(iOS 15.4, *)
    open var isSiteSpecificQuirksModeEnabled: Bool

    
    /** 一个布尔值,指示是否启用全屏API。 默认值为NO。我们可以将其设置为YES以启用对全屏API的支持。
     */
    @available(iOS 15.4, *)
    open var isElementFullscreenEnabled: Bool

    /** 指定web视图处于非活动状态时的调度策略,并且脱离了视图层次结构。在播放媒体或加载网页时,Web视图不会被认为是空闲的。 挂起的web视图将暂停JavaScript执行和页面布局。
     */
    @available(iOS 17.0, *)
    open var inactiveSchedulingPolicy: WKPreferences.InactiveSchedulingPolicy
}

WKPreferences的扩展,下面的javaScriptEnabled扩展属性,转移到WKWebpagePreferences类中,用于设置wkpage首选项配置

extension WKPreferences {

    
    @available(iOS, introduced: 8.0, deprecated: 14.0, message: "Use WKWebpagePreferences.allowsContentJavaScript to disable content JavaScript on a per-navigation basis")
    /**
    * 设置是否支持javaScript 默认是支持的
    */
    open var javaScriptEnabled: Bool
}
上一篇 下一篇

猜你喜欢

热点阅读