我有構造這樣一個HTML頁面:的UIWebView和基本URL絕對路徑
<html>
<head>
<link rel="stylesheet" href="/style.css" />
</head>
<body>
</body>
</html>
它存儲在My Documents目錄:
/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/12345-ID/Documents/mysite/index.html
我也存儲在style.css中文件目錄:
/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/12345-ID/Documents/mysite/style.css
但是現在,當我嘗試使用THI將HTML加載到我的WebView S:
NSURL *test = [NSURL URLWithString:@"file:///Users/username/Library/Application Support/iPhone%20Simulator/5.1/Applications/12345-ID/Documents/mysite/"]
[myWebView loadHTMLString:<the content retrieved from index.html> baseURL:test];
CSS中未裝載,當我攔截請求對樣式表與NSURLProtocol我可以看到該請求是錯誤的。它正試圖要求:
文件:///style.css
,而不是完整的基本URL。現在我可以通過刪除html文件中/style.css前面的/來解決這個問題。但有沒有簡單的方法來解決這個本地代碼而不修改HTML?
這正是我正在使用的內容(請參閱內容) – Thys
您是否嘗試將NSURL * test = [NSURL .......行結尾的'/'取消。您可能會遇到雙斜線條件,這可能會導致它默認爲用戶位置,只是一個想法。 – trumpetlicks
不工作:( – Thys