Tag: wkwebview

iOS的WKWebView JavaScript警报崩溃的iPad

我在这个答案中使用的解决scheme,正确地显示javascript alert / confirm / etc框,它在iphones上效果很好。 func webView(_ webView: WKWebView, runJavaScriptAlertPanelWithMessage message: String, initiatedByFrame frame: WKFrameInfo, completionHandler: @escaping () -> Void) { let alertController = UIAlertController(title: nil, message: message, preferredStyle: .actionSheet) alertController.addAction(UIAlertAction(title: "OK", style: .default, handler: { (action) in completionHandler() })) present(alertController, animated: true, completion: nil) } func webView(_ webView: WKWebView, runJavaScriptConfirmPanelWithMessage message: String, initiatedByFrame […]

与UIWebView相比,WKWebViewredirect问题

我正在更新一个UIWebView第一次wkWebView ,有一些url,我正在使用UIWebView与wkWebView无法正常工作。 例如:有一个loginURL,在一个“UIWebView”中,一旦我login,会自动将我redirect到详细信息页面。 而使用wkWebView ,login只需重新加载login页面。 我尝试了很多,但无法得到结果。

Swift WKWebView禁用Javascript

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

如何caching由WKWebView加载的资源?

我使用WKWebView来显示丰富的文字,包括图像。 我想将这些图像caching在磁盘上。 我如何获得这些HTTP请求并caching响应?

在iOS中使用WKWebView请求桌面网站

我全面search,但无法find一种方式来请求网站的桌面版本,而不依赖于网站本身(他们自己的“桌面版本”button)。 有没有办法做到这一点? 我想如果我能在UIWebView中使用它,可以在WKWebView上以相同的方式完成。

iOS使用embedded式tweet计算htmlstring的正确WKWebview高度

我正在使用wkwebview使用loadHTMLString方法加载给定的HTMLstring。 wkwebview didFinishNavigation后,我正在通过评估JavaScript“document.height”更新内容高度的wkwebview的高度。 这是纯HTMLstring的工作。 但对于embedded式tweet高度计算的htmlstring出错。 这里是鸣叫内容 </p> <blockquote class="twitter-tweet"> <p lang="fr" dir="ltr">Union Cabinet approves civil aviation policy.</p>&mdash; Press Trust of India (@PTI_News) <a href="https://twitter.com/PTI_News/status/742990663495647232">June 15, 2016</a></blockquote> <p> <script>window.twttr = (function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0],t = window.twttr || {};if (d.getElementById(id)) return t;js = d.createElement(s);js.id = id; js.src = "https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js, fjs);t._e = []; t.ready […]

使用共享的WKWebViewCookies请求

我的项目中有几个不同的WKWebViews,他们都通过一个WKProcessPool共享cookie。 现在我想在REST API上发出一个请求,并且需要从那个WKWebViews发送那个cookie到那个API。 有没有办法得到cookies? 我所得到的一切都是来自NSHTTPCookieStorage的cookies,但它们似乎并不与我在WKWebView中使用的cookie同步。 或者甚至有可能提出使用WKProcessPool的请求?

WKWebView保存pdf到ibooks,从链接保存pdf

我是Junior,目前正在从事WKWebView中Im的项目工作,并且有打开pdf的链接。 我可以在Safari中打开它,然后在iBooks中打开,但我希望它在我的应用程序内部执行。 可能吗 ? 这里是图片如何看起来像: 图片,我可以selectpdf 图片会打开什么 我的webview类 class WebVC: UIViewController, WKUIDelegate { var webView: WKWebView! override func viewDidLoad() { super.viewDidLoad() let myURL = NSURL(string: "\(savedURL!)") let myRequest = URLRequest(url: myURL! as URL) webView.load(myRequest) webView.allowsBackForwardNavigationGestures = true webView.allowsLinkPreview = false } override func viewWillAppear(_ animated: Bool) { self.navigationController?.toolbar.isHidden = false } override func loadView() { […]

在WKWebView中捕获并拨打电话号码

我有一个WKWebView,我想要求在select号码时拨打一个号码。 Web视图的内容包含HTML锚点标记“tel:”,我正在寻找一种方法来捕捉它。 哪个函数用于捕获这些标签?

WKWebViewembeddedvideo发布后继续播放声音

我正在实施一个服务,以播放video文件与Web视图。 我从UIWebView迁移到WKWebView,并试图播放Youtube和Coubvideo。 几乎所有东西都没问题,在iOS 8中没有崩溃,但是在WKWebView发布并从屏幕上移除后,video声音会持续播放一段时间(有些情况下大约需要45秒)。 我无法find阻止video的方式。 我试图用媒体播放器捕获系统通知,但没有成功。 有什么办法可以阻止WKWebView中的声音或video? 接下来是WKWebviewconfiguration: //javascript for configurate video viewport (not full screen) NSString *jScript = [NSString stringWithFormat:@"var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=%d, height=%d, initial-scale=1, maximum-scale=1'); document.getElementsByTagName('head')[0].appendChild(meta);", (int)VIEW_WIDTH, (int)VIEW_HEIGHT ]; WKUserScript *wkUScript = [[WKUserScript alloc] initWithSource:jScript injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES]; WKUserContentController *wkUController = [[WKUserContentController alloc] init]; [wkUController addUserScript:wkUScript]; WKWebViewConfiguration *config = [WKWebViewConfiguration […]