2015-12-21 135 views
3

我正在使用WKWebView在我的应用程序中加载一些链接。我想要禁用几乎所有网页上出现的所有恼人的JavaScript横幅。有没有一个简单的功能可以做到这一点?Swift WKWebView禁用Javascript

回答

4

WKWebView有禁用JavaScript的配置,请检查Apple reference

var javaScriptEnabled: Bool 

更新

let preferences = WKPreferences() 
preferences.javaScriptEnabled = false 

// Create a configuration for the preferences 
let configuration = WKWebViewConfiguration() 
configuration.preferences = preferences 

// Instantiate the web view 
webView = WKWebView(frame: view.bounds, configuration: configuration) 

// Load page 
if let theWebView = webView{ 
    let url = NSURL(string: "http://www.apple.com") 
    let urlRequest = NSURLRequest(URL: url!) 
    theWebView.loadRequest(urlRequest) 
    theWebView.navigationDelegate = self 
    view.addSubview(theWebView) 
} 
+0

我如何可以实现javaScriptEnabled在我的代码?我声明了一个var alpha = WKPreferences(),然后alpha.javaScriptEnabled = false,但javascript总是加载 – Swift1

+1

@ Swift1,检查更新。我已经添加了一个例子。 –

+1

您是否添加了WKNavigationDelegate? –

-1

对于我们谁仍然使用的Objective-C,这里是解决方案:

WKPreferences *prefs = [[WKPreferences alloc]init]; 
prefs.javaScriptEnabled = NO; 

// Create a configuration for the preferences 
WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc]init]; 
config.preferences = prefs; 

// Instantiate the web view 
_webView = [[WKWebView alloc]initWithFrame:[[UIScreen mainScreen]bounds] configuration:config];