我正在尝试使用wkwebview加载已下载到我的应用程序的本地html文件。除了这个html文件,我还下载了两个js文件,它们被引用在html文件中。但是无论我怎么做,它们都无法在wkwebview中加载。
@IBOutlet var webView: WKWebView!
@IBOutlet var act: UIActivityIndicatorView!
override func viewDidLoad() {
super.viewDidLoad()
// Adding webView content
webView.uiDelegate = self
webView.navigationDelegate = self
let fm = FileManager.default
let docsurl = try! fm.url(for:.documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
let myurl = docsurl.appendingPathComponent("index.html")
print("my url = ",myurl )
// myurl prints file///var/some directories/index.html
let request = URLRequest(url: myurl!)
webView.load(request)
}
我的HTML文件
<!DOCTYPE html>
<html>
<head>
<script src="jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
});
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<button>Click me</button>
</body>
</html>
但是从Safari中无法加载到屏幕上(Develop/),我可以看到An error occurred trying to load the resource
,页面显示为about:blank。
myurl
会打印什么?你在这里如何使用WKWebView
? - TheTigerWebView
而不是Safari吗? - TheTigerlet request = URLRequest(url: myurl) self.webView.load(request)
没有问题。您需要通过从该URL创建Data对象来检查是否存在相同的文件。 - TheTiger