我试图动态创建SVGNumber对象,并将其添加到SVGFEColorMatrixElement:创建新SVGNumber或其他SVG元素
var feColorMatrix = document.createElementNS("http://www.w3.org/2000/svg", "feColorMatrix");
var numberList = this.feColorMatrix.values.baseVal;
for(var i = 0; i < 20; i++){
// var number = document.createElementNS("http://www.w3.org/2000/svg", "SVGNumber"); // doesn't work either
// number.value = 0;
var number = {value:0};
numberList.appendItem(number);
}
由于SVGNumber是接口,通过我的理解,这应该工作正常,但我得到这个错误消息:
遗漏的类型错误:未能执行“appendItem”上“SVGNumberList”:参数1的类型不是“SVGNumber”
什么是创造这样的obj的正确道路像SVGNumber,SVGAnimatedNumber或SVGNumberList?
SVGNumber接口:https://developer.mozilla.org/en/docs/Web/API/SVGNumber
恐怕这主要是不对的。您可以通过svg元素上的createSVGNumber创建一个SVGNumber。 baseVal是只读的,因为您不能通过baseVal = x直接修改它,但它具有允许您修改它的函数。因此解决方法是不必要的。 –
斑点! :) – matteodelabre