Javascript 更新JS以使用IE10

Javascript 更新JS以使用IE10,javascript,dom,svg,Javascript,Dom,Svg,我的任务是为IE10更新一些Javascript。我一直在寻找解决办法,但似乎就是找不到。我陷入困境的代码是: var svgns = "http://www.w3.org/2000/svg"; this.svgDoc = document.getElementById("SVGDoc").getSVGDocument(); this.grp = this.svgDoc.createElementNS(svgns, "g"); this.grp.setAttribute("id", this.i

我的任务是为IE10更新一些Javascript。我一直在寻找解决办法,但似乎就是找不到。我陷入困境的代码是:

var svgns = "http://www.w3.org/2000/svg";
this.svgDoc = document.getElementById("SVGDoc").getSVGDocument();
this.grp = this.svgDoc.createElementNS(svgns, "g");
this.grp.setAttribute("id", this.id);

if (this.parent)
    this.svgDoc.getElementById(this.parent.id).appendChild(this.grp);
else
    this.svgDoc.getDocumentElement.appendChild(this.grp);

最后一行是它失败的地方,这给了我一个错误:无法获取未定义或空引用的属性
appendChild
。我似乎不明白为什么它是一个空引用,因为它与IE8和更低版本一起工作。

getDocumentElement应该只适用于几乎所有版本的IE,根据

将getDocumentElement更改为getDocumentElement(),这可能解释了我遇到问题的原因。这段代码不是我写的,所以,正如你可能知道的,我很难阅读它。我现在得到的错误对象不支持属性或方法“getDocumentElement”,请尝试
This.svgDoc.ownerSVGElement
。我尝试了This.svgDoc.ownerSVGElement.appendChild和This.svgDoc.ownerSVGElement.getDocumentElement()我知道,那是我的专长:-)啊,好的。我没有在DOM列表中看到任何SVG。它不是SVG特有的,它适用于任何XML文档,SVG只是其中一个例子。这似乎已经奏效了!由于IE10的原因,现在还有一些错误需要修复。