JavaScriptでHTML要素を操作するには、まず「要素を取得する」必要があります。
この記事では、よく使う要素取得の方法を分かりやすく解説します。
document.getElementById('sample')
「この1つだけ取れればいい」という場合に最適です。
document.getElementsByClassName('sample')
const elements = document.getElementsByClassName('sample');
elements[0].style.color = 'red';
👉 そのままでは使えず、配列のように扱う必要あり
document.querySelector('#sample p')
document.querySelector('.box')
document.querySelector('#id')
document.querySelector('ul li a')
document.querySelectorAll('.hoge')
const elements = document.querySelectorAll('.hoge');
elements.forEach(el => {
el.style.color = 'blue';
});
document.getElementsByTagName('li');
const items = document.getElementsByTagName('li');
document.getElementsByName('username')
parentElement.querySelector('.child')
👉 特定の範囲内だけで探せるので便利
element.closest('.container')
👉 自分から上の階層に向かって検索
element.children
element.firstElementChild
👉 DOMの構造を辿るときに使用
| 方法 | 特徴 |
|---|---|
| getElementById | 1つだけ取得・高速 |
| getElementsByClassName | 複数取得(古め) |
| querySelector | 柔軟・1つ取得 |
| querySelectorAll | 柔軟・複数取得 |
| getElementsByTagName | タグ単位 |
querySelectorquerySelectorAllgetElementById が最速