我在IOS中遇到了一个奇怪的UIWebview对象问题

时间:2016-10-21 14:13:38

标签: javascript html ios css swift3

我面临着UIWebview对象的一个​​奇怪问题。在这里我必须加载带有css文件的html页面和js.here是我使用的以下代码行

let htmlFile = Bundle.main.path(forResource: "sale", ofType: "html")
let html = try? String(contentsOfFile: htmlFile!,encoding:String.Encoding.utf8)         
webViewObj.loadHTMLString(html!,baseURL: nil)

it only loads the html page on device and IOS simulator (no css and JS applied ).

Where as the same html file loads well on Android device with applied css and JS.

Please suggest any workaround.

1 个答案:

答案 0 :(得分:0)

请检查你的sale.html,css文件应该这样写:

<link href="mycss.css" rel="stylesheet" type="text/css">

注意&#34; href&#34;。

加载html源时添加baseurl:

let htmlFile = Bundle.main.path(forResource: "sale", ofType: "html")
let baseURL = NSURL.fileURL(withPath: Bundle.main.bundlePath)
let html = try? String(contentsOfFile: htmlFile!,encoding:String.Encoding.utf8)
webViewObj.loadHTMLString(html!,baseURL: baseURL)

如果不起作用,您可以使用Safari来调试sale.html。或者您可以打印sale.html的路径并在Finder中打开路径。只要找出css和js文件的位置,然后更改&#34; href&#34;走向正确的道路。

您可能希望看到这一点:https://webdesign.tutsplus.com/articles/quick-tip-using-web-inspector-to-debug-mobile-safari--webdesign-8787