【发布时间】:2015-06-16 17:23:07
【问题描述】:
这可能是微不足道的问题,但我似乎无法弄清楚。 document.getElementById 选择我要写入数据的 tspan,但没有显示任何内容。代码如下。 var percentAS 设置为 71,工作正常。控制台中没有错误。请注意,这是我的代码的最小化版本,文档中实际上还有更多内容。
<body>
<text id="data" fill="white" x="460" y="160">
{{signups.[0]}} -
<tspan id="percentAS"></tspan>
</text>
</body>
<script>
document.getElementById("percentAS").innerHTML = percentAS + "%";
</script>
我尝试将一些数据记录到控制台以查看发生了什么:
console.log(document.getElementById("percentAS"));
这会在错误控制台中返回:
tspan#percentAS.[object SVGAnimatedString]
innerHTML: "71%"
__proto__: SVGTSpanElementPrototype
编辑 其他人要求提供更多上下文,但我确信没有任何东西干扰我上面粘贴的内容,否则我会添加更多上下文。这只是一些基本的 sgv 多边形,阅读起来非常痛苦,因为它们有很多点,这就是我没有包括它们的原因。
编辑 2 看来我的问题是 Safari 网络浏览器独有的,因为我在 Chrome 和 Firefox 中打开它,它工作得非常好。尽管我发现几年前的几篇博客文章详细介绍了类似问题,但我找不到 Safari 的任何已知问题。
【问题讨论】:
标签: javascript innerhtml getelementbyid