document1的nodeA 想加一个子节点nodeB,nodeB属于document2
直接nodeA.appendChild(nodeB)会报错:The given node was not created by the current document
需要用importNode方法在dom1中也创建一个nodeB
//创建defs节点
Element defsElement = svgRoot.getOwnerDocument().createElement("defs");
//调用接口
for(String devref: devrefList){
//从map中获取对应的symbol
Node symbolNode = SymbolElementManager.getInstance().getNodeByDevref(devref);
//创建一个可以添加到当前dom文档的节点(true:深复制包括子节点和子节点属性;false:不包括子节点)
symbolNode = defsElement.getOwnerDocument().importNode(symbolNode, true);
//将该节点加入到defs节点
defsElement.appendChild(symbolNode);
}
svgRoot.appendChild(defsElement);