我注意到在一些代码示例中,似乎存在不同的克隆DOM节点并将其附加到现有元素的方式:

element.appendChild(something.cloneNode(true));
element.appendChild(document.importNode(something, true));


两者都具有复制节点的作用。第二个版本似乎更冗长,它暗示该副本实际上首先是具体的某个地方,尽管它仍需要找到合适的住所。但是,它由MDN和其他一些公司用作使用template标记的说明。在其他地方,它们使用更简单的clodeNode选项。

问题是:与importNode相比,使用cloneNode有什么好处?

最佳答案

在DOM3和更早版本中,importNode用于从其他文档复制节点,cloneNode用于在同一文档内复制。但是浏览器并没有强制执行此操作,因此在最新的DOM standard cloneNode中可用于从其他文档复制。在其他上下文中使用DOM时,请遵守DOM3规则。

关于javascript - JavaScript:cloneNode与importNode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43167537/

10-09 16:19