JavaScript - querySelectorAll()の使い方
JavaScriptでセレクターに一致するすべての要素を取得する場合は、 querySelectorAll()メソッドを使います。
querySelectorAll()も戻り値はNodeListオブジェクトです。
すべての要素ではなく、一致した最初の要素だけでいい場合は、 querySelector()メソッドを使います。
querySelectorAll()の構文
document.querySelectorAll(セレクター)
セレクター = CSSで使われている記法
サンプルコード
HTML
次のように、p要素を3つ用意します。
<p class="cls1">コンテンツ1</p>
<p class="cls2">コンテンツ2</p>
<p class="cls3">コンテンツ3</p>
JavaScript
セレクターに「p要素」を指定して、全てのp要素を取得します。
var nodes = document.querySelectorAll('p');
for (var i = 0; i < nodes.length; i++){
console.log(nodes[i].textContent);
}
console.log(nodes);
// 実行結果 ------
コンテンツ1
コンテンツ2
コンテンツ3
NodeList(3)
実行結果からわかるように、NodeListオブジェクトを戻り値として戻します。
セレクターに一致する要素がない場合
上記のHTMLを利用して、存在していない要素「div要素」をセレクターに指定してみます。
var nodes = document.querySelectorAll('div');
for (var i = 0; i < nodes.length; i++){
console.log(nodes[i].textContent);
}
console.log(nodes);
// 実行結果 -----
NodeList []
このように、該当要素がない場合は空のLodeListオブジェクトが返ってきます。