gpt4 book ai didi

javascript - 如何将元素数组转换为 NodeList?

转载 作者:行者123 更新时间:2023-11-29 21:59:06 28 4
gpt4 key购买 nike

首先是:这不是问如何将 NodeList 变成数组。这是相反的。

为了保持一致性,我想创建一个返回 NodeList 的函数,就像 document.querySelectorAll() 一样。

这是我当前的代码:

var toNodeList = function(arrayOfNodes){
var fragment = document.createDocumentFragment();
arrayOfNodes.forEach(function(item){
fragment.appendChild(item);
});
return fragment.childNodes;
};

然而,这会从 DOM 中删除原始元素!

如何以非破坏性的方式制作NodeList

最佳答案

您需要克隆该节点。

var toNodeList = function(arrayOfNodes){
var fragment = document.createDocumentFragment();
arrayOfNodes.forEach(function(item){
fragment.appendChild(item.cloneNode());
});
return fragment.childNodes;
};

注意将 true 传递给 cloneNode 以进行深度克隆。

关于javascript - 如何将元素数组转换为 NodeList?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24869761/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com