1

我有一个节点复制功能。

此函数可能是 IE 上的 setHtml 问题的替代函数。

我想复制 Attributes 和 innerText(对于 EveryNode)。

我的问题是每个节点都有(可能是)文本+一些节点。

我想按节点复制节点如下所述的条件

1.仅当前节点的文本(不是 InnerNodes 文本)

2.子节点与其所有属性重复

我的功能如下:

 function NodeDuplicateCreator(DummyNode, RealNode) {
            var XnodefromReal = RealNode.getChildren();
            for (var i = 0; i < XnodefromReal.count(); i++) {
                if (XnodefromReal.getItem(i).$.nodeType == 1) {
                    var xnode = XnodefromReal.getItem(i);
                    var xnodeName = xnode.getName();
                    var NewNodeGen = DummyNode.getElementsByTag(xnodeName).getItem(0);
                    if (NewNodeGen == null) {
                        NewNodeGen = EditorInstance.document.createElement(xnodeName);
                        NewNodeGen.appendTo(DummyNode);
                    }
                    NodeDuplicateCreator(NewNodeGen, xnode);
                }
            }
        }     

请根据我的要求改进它...

4

1 回答 1

1

尝试copyAttributes(node)对属性使用函数

尝试下面的代码到 textcontent+childnodes

if(XnodefromReal.getItem(i).$.nodeType == 1) 
{
//for childnodes
}
else if(XnodefromReal.getItem(i).$.nodeType == 3) 
{
//for text content
}
于 2012-10-29T08:45:20.020 回答