UIWebView中的iOS loadHtmlString不';我不能使用Javascript
我有一个iOS应用程序来加载一个html字符串,该字符串引用同一目录中的外部css文件和javascript文件 这是我的html文件:UIWebView中的iOS loadHtmlString不';我不能使用Javascript,javascript,ios,uiwebview,Javascript,Ios,Uiwebview,我有一个iOS应用程序来加载一个html字符串,该字符串引用同一目录中的外部css文件和javascript文件 这是我的html文件: <html> <head> <meta name="viewport" content= user-scalable="no", width="device-width" /> <meta http-equiv="Content-Type" content="text/html"; charset="U
<html>
<head>
<meta name="viewport" content= user-scalable="no", width="device-width" />
<meta http-equiv="Content-Type" content="text/html"; charset="UTF-8"/>
<link rel="stylesheet" type="text/css" href="mystyle.css" />
<script type="text/javascript" src="myjavascript.js"></script>
</head>
css文件工作正常,但js文件似乎从未加载。原因可能是什么
顺便说一下,我使用loadHtmlString:BaseUrl方法来加载我的html字符串
谢谢这个问题有点老了,但由于还没有得到回答,我想指出,如果您希望web视图加载位于捆绑包中的javascript文件,方法是:
[webView loadHTMLString:html
baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]];
如果不指定baseURL,则不可能加载javascript文件。就像其他人所说的那样
- 使用baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]bundlePath]]
- 复制捆绑资源,而不在编译资源中
就这样 默认情况下,xcode将把新的Javascript文件放在编译资源中,而不是捆绑资源中。点击你的项目,然后点击你的目标。在“构建阶段”下,您可以在“编译源代码”下看到Javascript文件。将它们向下拖动到“复制捆绑资源”部分。请参考链接,希望它能有所帮助,因为我还没有尝试过。您可以为此显示iOS代码吗?请检查以确保javascript位于复制捆绑资源部分,而不是编译源代码部分。我不知道为什么,但有时候Xcode认为它应该编译Javascript。当然,这是不可能的,所以你只能得到一堆没有操作代码和HTML资源的结果。谢谢你的回复。我最终没有使用嵌入式javascript。但我会检查你的建议是否有效。它确实有效。讨论将.js文件从“编译资源”移动到“复制捆绑资源”的两个未被接受的答案是正确的;这为我解决了问题。这正是我所做的。问题是尽管css很好,javascript仍然没有加载。。。您确定您的javascript不包含一些错误吗?JS的问题是它会无声地失败。作为一个非常原始的调试,您可以在其中放入一些警报语句(比如js文件的第一行),然后查看它们是否会弹出……是的,我已经通过只添加一行js代码来进行了测试。但是它不起作用。CSS是有效的。无论如何,谢谢。这正是我在将几个JS文件拖到项目中时发生的事情。我从编译资源中删除了它们,因为Xcode抛出了一个错误,但是如果它们不在捆绑资源中,我的应用程序就无法使用它们。谢谢这救了我的命!谢谢@Kevin Borders!