たとえば、次の 2 つの DOMNode があります。
let node1 = document.querySelector('#node-1');
let node2 = document.querySelector('#node-2');
それらを NodeList オブジェクトに結合するにはどうすればよいですか? のような簡単な解決策はありarray.push(item)
ますか?
たとえば、次の 2 つの DOMNode があります。
let node1 = document.querySelector('#node-1');
let node2 = document.querySelector('#node-2');
それらを NodeList オブジェクトに結合するにはどうすればよいですか? のような簡単な解決策はありarray.push(item)
ますか?
両方のノードをドキュメント フラグメントに追加できます。
var docFragment = document.createDocumentFragment();
docFragment.appendChild(node1);
docFragment.appendChild(node2);
本当に NodeList に入れたい場合は、次のようにします。
var list = docFragment.querySelectorAll('*');
これの欠点は、ノードをドキュメント フラグメントに追加するとすぐに、実際のドキュメントからノードを削除することです。
var nList = document.querySelectorAll('[id^="node"]');
「node」で始まる ID を持つすべてのノードを収集します。
var nList = document.querySelectorAll('[id^="node"]');
for (var i = 0; i < nList.length; i++) {
var node = nList[i].id;
console.log('Node: ' + node);
}
<div id="node-1">node-1</div>
<div id="node-2">node-2</div>
<div id="notnode-3">notnode-3</div>
<div id="check">Check the console (F12, then choose the 'console' tab)</div>
これを Orr Siloni の回答への追加と考えてください。
ノードを DOM から削除したくない場合は、 を使用してノードのコピーを追加できますnode.cloneNode()
。