答案 0 :(得分:1)
任何标准都没有innerSVG属性。根据{{3}} Element.innerHTML
,也应该适用于SVG或其他XML内容。
2009年,图书馆<memory>
header发布到
在所有SVGElements上提供innerHTML属性
当时显然,并非在所有浏览器中都有效。它包含自己的XML序列化器实现。
源代码中的大量TODO
条评论似乎表明它是相当不完整的。
自Internet Explorer 9以来,不再需要它,因为支持XMLSerializer
。虽然IE 11似乎有一个错误并且没有返回innerHTML
的内容,但这将起作用:
function getInnerHTML (el) {
if (el.innerHTML === undefined) {
var XMLS = new XMLSerializer();
var nodes = [];
for (var i = 0; i < el.childNodes.length; i++) {
nodes.push(XMLS.serializeToString(el.childNodes[i]));
}
return nodes.join('');
} else {
return el.innerHTML;
}
}