我能够创建一个Android hello world应用程序,使用WebView.loadDataWithBaseURL方法从assets文件夹加载html文件:
webView.loadDataWithBaseURL("file:///android_asset/appcode/", html, "text/html", "UTF-8", null);
我的HTML看起来有点像这样:
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
<script src="/js/lib/jquery-1.11.0.js"></script> <!-- This script is not being loaded -->
<script src="helloWorld.js"></script> <!-- This script is being loaded -->
</head>
<body>
<div id="placeholder"></div>
</body>
</html>
问题如下:当helloWorld.js文件成功加载时,未加载jquery-1.11.0.js。我确认该文件存在于相对路径下。
如果我将jquery-1.11.0.js移动到html文件位置(到helloWorld.js所在的同一位置),它就可以解决问题。但我想使用相对路径来加载脚本。提前谢谢。
更新:
答案 0 :(得分:0)
我建议您改用CDN:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="helloWorld.js"></script>
答案 1 :(得分:0)
绝对路径有时在WebView(例如JavaScript文件)中不起作用。 我建议使用带有点(。)的相对路径,然后使用路径
<script src="./js/lib/jquery-1.11.0.js"></script>
^