Мне нужно загрузить файлы javascript из папки ресурсов приложений. На данный момент он действительно читает изображения из ресурсов просто отлично, но по какой-то причине он не читает javascripts.
Мне удалось отобразить html-документы, которые ссылаются на эти javascripts, если сами файлы html записываются в ресурсы, но я хотел бы отобразить html/js, установив html UIWebView, чтобы он мог быть динамическим.
Вот что я делаю:
NSString * html = @"<!DOCTYPE html><html><head><title>MathJax</title></head><body><script type=\"text/x-mathjax-config\">MathJax.Hub.Config({tex2jax: {inlineMath: [[\"$\",\"$\"],[\"\\(\",\"\\)\"]]}});</script><script type=\"text/javascript\" src=\"/MathJax/MathJax.js\"></script>$$\\int_x^y f(x) dx$$<img src=\"coffee.png\"></body></html>";
NSString * path = [[NSBundle mainBundle] resourcePath];
path = [path stringByReplacingOccurrencesOfString:@"/" withString:@"//"];
path = [path stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
NSString * resourcesPath = [[NSString alloc] initWithFormat:@"file://%@/", path];
[webview loadHTMLString:html baseURL:[NSURL URLWithString:resourcesPath]];
Теперь, если я изменяю базовый url на свой сервер, который также имеет необходимые файлы, он действительно загружается. Было бы здорово не требовать подключения к Интернету. Любая помощь приветствуется!!!;)
Я нашел, что это полезно для отображения изображений: iPhone Dev: UIWebView baseUrl для ресурсов в папке "Документы" , а не в комплекте приложений
Edit:
Вместо того, чтобы выполнять замену строки и кодировку URL, я смог получить образы, просто вызвав resourceURL на mainBundle, но все равно не выполнив javascript.
NSString * setHtml = @"<!DOCTYPE html><html><head><title>MathJax</title></head><body><script type=\"text/x-mathjax-config\">MathJax.Hub.Config({tex2jax: {inlineMath: [[\"$\",\"$\"],[\"\\(\",\"\\)\"]]}});</script><script type=\"text/javascript\" src=\"/MathJax/MathJax.js\"></script>$$\\int_x^y f(x) dx$$<img src=\"images/test.png\"></body></html>";
[webview loadHTMLString:setHtml baseURL:[[NSBundle mainBundle] resourceURL]];
ИЗМЕНИТЬ
Если вы хотите помочь сделать это, я упростил вам создание проекта!
https://github.com/pyramation/math-test
git clone [email protected]:pyramation/math-test.git