【发布时间】:2015-07-19 15:33:02
【问题描述】:
我有一个 HTML 文件,其中包含引用 SVG 文件的 Snap.svg(只是一个 Javascript API)动画。
window.onload = function () {
var s = Snap("#headDiv");
Snap.load("emotions.svg", function(f) {
我试图让它在 Android WebView 中本地运行,但有趣的是,我的网页仅在通过以下方式访问时才能从服务器完美运行:
mWebView.loadUrl("http://www.myurl.com/index.html");
我将网页文件放入资产文件夹后
和访问
mWebView.loadUrl("file:///android_asset/index.html");
一切运行良好,(包括外部 Javascript 文件)除了我的 SVG 根本不显示。我尝试过使用 API 16 和 19,结果相同:从服务器运行良好,本地没有 SVG 显示。这让我想知道我是否指错了我的文件或其他什么。
编辑:我还刚刚发现该网页在 Firefox 本地工作,但不是 Chrome。问题可能就在这里。
【问题讨论】:
-
可能限制在
Snap中。没有可重复的样本,很难说。 -
@CommonsWare 这似乎是这种情况。我能够简单地将 SVG 添加到 HTML 正文中,并且渲染得很好。我刚刚发现我的同一个网页在 Firefox 中本地工作,但不是 Chrome。我相信我的问题就在这里。
-
WebView与 Chrome 使用的基本引擎相同,因此如果您遇到 Chrome 问题,WebView中可能会遇到类似问题。
标签: javascript android svg webview