【问题标题】:HTML resources(css/js) are not loading while opening Local HTML files stored inside internal memory in android webview在 android webview 中打开存储在内部内存中的本地 HTML 文件时,没有加载 HTML 资源(css/js)
【发布时间】:2016-03-10 18:11:41
【问题描述】:

我正在加载一个存储在 android 内部存储器中的 html 文件。我使用下面的行来加载 html url。

webView.loadUrl("file:///" + file);  

这里的文件位置类似于/data/data/apppackagename/localcontent/html/../../../home.html

我的问题是 html 文件在 webview 中加载正常。但是它没有引用其他文件夹中的 css 和 js 文件。

例如: 如果 html 文件位于以下位置。

/data/data/apppackagename/localcontent/html/../../../home.html

js 和 css 位于同一个位置

/data/data/apppackagename/localcontent/html/../../../xyz.css
/data/data/apppackagename/localcontent/html/../../../abc.js

然后通过引用js和css文件就可以正常工作

但如果 html 文件位于以下位置。

/data/data/apppackagename/localcontent/html/../../../home.html

js 和 css 位于同一个位置

/data/data/apppackagename/localcontent/html/../../../css/xyz.css
/data/data/apppackagename/localcontent/html/../../../js/abc.js

那么它在 webview 中加载时不会引用 css 和 js 文件。

请注意,我正在从网络下载 html 文件并存储内部存储器并在没有网络时访问它。

html 文件中的路径也只是相对的。请有人帮我解决这个问题。提前致谢。

上次编辑:

我分析发现有些css/js文件没有正确下载,这就是html没有正确加载的原因。我检查了根设备中的文件。谢谢。

【问题讨论】:

  • 我建议在assets文件夹中添加html文件、css和js。

标签: java android webview


【解决方案1】:

在 html 文件中引用 css 和 js 如下所示,如果 html 文件,js 和 css 在同一个文件夹中。

<script src="js/src.js"></script>
<link href="css/css.css" type="text/css" rel="stylesheet" />

这对我有用。

【讨论】:

  • 感谢您的回复@Balu SKT 我已经这样做了。但它不起作用。 :(
猜你喜欢
  • 1970-01-01
  • 2015-06-11
  • 1970-01-01
  • 2014-01-19
  • 2014-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-23
相关资源
最近更新 更多