WKWebView不打开任何target="_blank"在HTML <a href>-Tag中也称为"在新窗口中打开"属性的链接.
我有一个WKWebView,它应该加载以下url:
https://buchung.salonmeister.de/place/#offer-details-page?id=907599&venueId=301655
Run Code Online (Sandbox Code Playgroud)
她是我使用的代码:
import UIKit
import WebKit
class MMWKBrowserController: UIViewController {
private let closeButtonSelector: Selector = "closeButtonTapped:"
private var urlString: String
private let request: NSMutableURLRequest
private var webView: WKWebView!
private var twoLineTitleView: UIView!
private var titleLabel: UILabel?
private var subTitleLabel: UILabel?
private var indicator: UIActivityIndicatorView!
init(urlString: String) {
self.urlString = urlString
println("*** Using MMWKBrowserController ***")
var url: NSURL? = NSURL(string: urlString)
if url == nil {
var escapedString: String = urlString.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!
self.urlString = escapedString
url = NSURL(string: escapedString)
}
println("url: …Run Code Online (Sandbox Code Playgroud) WKWebview没有加载某些网址.这是我的代码片段
let myURL = URL(string: "https://contents.tdscpc.gov.in/")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
Run Code Online (Sandbox Code Playgroud)
当我改变网址说它URL(string: "https://www.ndtv.com/")有效.不知道为什么?任何建议都会非常有帮助.
我创建了一个简单的iOS应用程序,它使用WKWebView打开URL。在网站的网站上,有指向PDF文档的链接。在浏览器中打开网站时,可以单击链接,然后打开PDF文档。但是,当我单击链接时,进入我的应用程序并没有任何反应。我该如何解决?我是否必须在info.plist中添加一些内容?
感谢帮助。
我正在尝试使用 Swift 在 iOS 13 上加载带有 WKWebView 的网页。它在 iOS 12 中运行良好。问题是 WKWebView 在 iOS 13 上显示白屏。两者(iOS 12/iOS 13)使用相同的 URL,所以我 100% 确定 URL 中没有问题。这是我加载网页的 UIViewController:
import UIKit
import WebKit
class WebViewController: UIViewController , WKNavigationDelegate{
var param : String!
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: "https://google.com")!
webView.load(URLRequest(url: url))
}
override func loadView() {
webView = WKWebView()
webView.navigationDelegate = self
view = webView
}
}
Run Code Online (Sandbox Code Playgroud)
野生动物园检查员结果:
about:blankwww.google.com我正在将我的应用程序从UIWebView迁移到WKWebView.一切顺利,我正在努力修补它.但是,我现在注意到我无法下载论坛附件.
我正在使用HCDownload,到目前为止我一直都很完美,所以我知道它不是为了这个目的.我相信它的要求,但我无法弄明白.
我知道以下内容:
UIWebView => WKWebView Equivalent
--------------------------------------------------------------
didFailLoadWithError => didFailNavigation
webViewDidFinishLoad => didFinishNavigation
webViewDidStartLoad => didStartProvisionalNavigation
shouldStartLoadWithRequest => decidePolicyForNavigationAction
Run Code Online (Sandbox Code Playgroud)
所以我知道我在下面尝试:
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
NSURLRequest *request = navigationAction.request;
NSURL *fileURl = [request URL];
NSString *externalFileExtension = [fileURl pathExtension];
NSString *internalFileExtension = [[fileURl absoluteString] pathExtension];
HCDownloadViewController *dlvc = [[HCDownloadViewController alloc] init];
UINavigationController *vc = [[UINavigationController alloc] initWithRootViewController:dlvc];
dlvc.delegate = self;
vc.transitioningDelegate = self;
if (navigationAction.navigationType == WKNavigationTypeLinkActivated) {
//External file extensions
if ([fileExtensions containsObject:[externalFileExtension lowercaseString]]) { …Run Code Online (Sandbox Code Playgroud) 我正在开发一个应用程序,其中一些代码继承自其他开发人员,并具有加载 html 文件的 Web 视图。
html 文件中包含电话号码和网页链接。如果长按电话号码将会打开,但 html 链接不会打开。
我希望它们通过短按打开,但短按什么也没有发生。如果我长按,系统对话框会弹出一个“打开”选项,但按“打开”不会执行任何操作。
这是我刚才的代码:
#import "IntroductionViewController.h"
@interface IntroductionViewController () <WKNavigationDelegate, WKUIDelegate>
@end
@implementation IntroductionViewController
@synthesize html_file_name;
@synthesize web_view;
@synthesize spinner;
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationController.navigationBarHidden = NO;
[self setTitle:_title_string];
[self.web_view bringSubviewToFront:spinner];
[spinner setHidden:NO];
[spinner startAnimating];
NSURL *url = [[NSBundle mainBundle] URLForResource:html_file_name withExtension:@"html"];
[self.web_view loadRequest:[NSURLRequest requestWithURL:url]];
self.web_view.navigationDelegate = self;
self.web_view.UIDelegate = self;
}
- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(null_unspecified WKNavigation *)navigation withError:(NSError *)error {
[spinner setHidden:YES];
[spinner stopAnimating];
}
- (void)webView:(WKWebView *)webView didFinishNavigation:(null_unspecified WKNavigation *)navigation …Run Code Online (Sandbox Code Playgroud)