Tag: wkwebview

检测页面是否在JavaScript中的WKWebView中加载

我怎样才能可靠地检测使用JavaScript,一个页面加载在一个WKWebView? 我希望能够检测到这些情况: iOS和WKWebView iOS和Safari 不是iOS 这里有一个关于UIWebView的类似问题。 但是这是相当古老的,我不确定是否仍然适用于WKWebView。

iOS WKWebView不显示javascript alert()对话框

我有一些麻烦在iOS 8中获取WKWebView显示从Javascript调用的警报对话框。 在创build一个标准的WKWebView并加载一个HTML文件后,我在页面上有一个button,用一些文本创build一个简单的警报。 这在UIWebView和谷歌浏览器/ Safari中工作,但似乎没有工作在WKWebView。 任何帮助表示赞赏。 我的设置如下: WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init]; config.allowsInlineMediaPlayback = YES; config.mediaPlaybackRequiresUserAction = false; _wkViewWeb = [[WKWebView alloc] initWithFrame:_viewWeb.frame config]; _wkViewWeb.scrollView.scrollEnabled = NO; NSString *fullURL = @"file://…/TestSlide.html"; NSURL *url = [NSURL URLWithString:fullURL]; NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:10]; [_wkViewWeb loadRequest:request]; 该html有以下function: <SCRIPT Language="JavaScript"> function alertTest() { alert("Testing Alerts"); } […]

WKWebView在safari中打开某个域的链接

寻找一些帮助我的iOS应用程序。 在我的应用程序中,我希望打开WKWebView中来自我的域(EX:communionchapelefca.org)的点击链接,然后在Safari中打开所有其他域(EX:google.com)的链接。 我宁愿这样做编程,因为这是我的代码是如何设置的。 我已经find了一些解决scheme( 在这里 , 这里 , 这里 , 这里 ),但他们都似乎是Obj-C的基础,我正在寻找一个解决scheme,使用Swift。 提前致谢。 ViewController.swift: import UIKit import WebKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let myWebView:WKWebView = WKWebView(frame: CGRectMake(0, 0, UIScreen.mainScreen().bounds.width, UIScreen.mainScreen().bounds.height)) myWebView.loadRequest(NSURLRequest(URL: NSURL(string: "http://www.communionchapelefca.org/app-home")!)) self.view.addSubview(myWebView)

如何删除WKWebview cookies

现在我正在这样做 NSHTTPCookie *cookie; NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; for (cookie in [storage cookies]) { [storage deleteCookie:cookie]; } 但它不适用于iOS 8,64位设备。 任何其他方式WKWebview干净的cookies? 任何帮助将不胜感激。 谢谢。

在WKWebView中调用本地代码的JavaScript函数

在iOS 8中使用WKWebView,我如何从本地运行JavaScript函数,或者从本地运行到JavaScript? 似乎没有类似于UIWebView的stringByEvaluatingJavaScriptFromString: 。 (我可以在configuration.userContentController对象上使用- addScriptMessageHandler:name:来允许从JS到本地的通信,但我正在寻找相反的方向。)

从WKWebView获取所有的cookies

虽然通过使用NSHTTPCookieStorage.sharedHTTPCookieStorage()从UIWebView获取cookie似乎很简单,但似乎WKWebView将cookie存储在别的地方。 我做了一些研究,并从NSHTTPURLResponse对象中获取了一些cookie。 但是,这并不包含WKWebView使用的所有Cookie: func webView(webView: WKWebView, decidePolicyForNavigationResponse navigationResponse: WKNavigationResponse, decisionHandler: (WKNavigationResponsePolicy) -> Void) { if let httpResponse = navigationResponse.response as? NSHTTPURLResponse { if let headers = httpResponse.allHeaderFields as? [String: String], url = httpResponse.URL { let cookies = NSHTTPCookie.cookiesWithResponseHeaderFields(headers, forURL: url) for cookie in cookies { logDebug(cookie.description) logDebug("found cookie " + cookie.name + " " + […]