我想將幾個.js文件包含到我加載到我的UIWebView
的HTML文件中。這些文件位於我的app bundle
之內。我也想爲webView
設置不同的baseURL
。UIWebView:鏈接到文件捆綁並設置baseURL
到目前爲止,我現在用的是以下幾點:
HTML文件:
... a bunch more html code above
<head>
<script src="%wJQ%" type="text/javascript"></script>
</head>
... a bunch more html code below
文件加載我UIWebView
:
NSString *jQ = [[[NSBundle mainBundle] URLForResource:@"myjsfile" withExtension:@"js"] absoluteString];
htmlString = [htmlString stringByReplacingOccurrencesOfString:@"%wJQ%" withString:jQ];
這給了我這樣的:
<script src="file://localhost/Users/webmaster/Library/Application%20Support/iPhone%20Simulator/5.1/Applications/43C9E1C2-C7FD-4FC1-BF6A-844266920CCD/MyApp.app/myjsfile.js" type="text/javascript"></script>
不幸的是,當我查看UIWebView
時,它似乎無法加載.js文件。
然後,我希望把我的baseURL
到遠程URL,因爲我需要一些相對鏈接的工作:
NSString *webURL = @"http://www.mysite.com";
[self.webView loadHTMLString:htmlString baseURL:[NSURL URLWithString:webURL]];
我怎樣才能得到這兩種技術正常工作起來呢?
什麼是您所加載的文件的內容? – Gruntcakes 2012-03-29 02:55:37
如果它只是javascript(即使你稱之爲htmlString),那麼你不能通過加載它來運行它,你需要調用stringByEvaluatingJavaScriptFromString()來執行它。如果它的JS嵌入在html中,那麼我們需要看看它爲什麼不能正常工作。 – Gruntcakes 2012-03-29 03:24:32
這只是一個JavaScript文件。但我的捆綁包中也有一些css文件。但我需要能夠將我的'UIWebView'的'baseURL'設置爲一個域,這就是爲什麼我要這樣做。 – 2012-03-29 03:25:00