【发布时间】:2019-08-08 10:56:18
【问题描述】:
我正在尝试创建一个 SVG 路径元素而不将其附加到 DOM 并仅计算其长度,但由于某种原因我没有这样做。
在创建一个新元素并添加适当的长度后,它不允许我调用 getTotalLength() 函数来获取它的长度。可以通过在任何浏览器控制台上复制粘贴以下行来重新创建它:
var path = document.createElementNS('SVG', 'path');
d3.select(path).attr('d', 'M' + 10 + ',' + 10 + 'L' + 75 + ',' + 75);
path.getTotalLength();
这是最后一行代码的错误:
未捕获的类型错误:path.getTotalLength 不是函数 在评估中
我怀疑并希望它真的很容易发现和修复,但我缺乏想法......
【问题讨论】:
-
好吧,'SVG' 不是正确的命名空间。试试
document.createElementNS('http://www.w3.org/2000/svg', 'path')
标签: javascript d3.js svg