JavaScriptでの要素の取得方法のまとめ
ピュアなJavaScriptで要素を取得したいとき、getElementByIdなら覚えているのですが、他のものになると忘れてしまうときがあるので、メモも兼ねて基本操作と一緒にまとめておきます。
要素の取得方法一覧
まずは要素の取得方法から、querySelectorとquerySelectorAllがjQueryを使っていた人には馴染み深いと思いますので、基本的にはそれを使っていていいように思います。
| 取得できる要素 | 取得方法 |
|---|---|
| id | document.getElementById(‘id’); |
| class | document.getElementsByClassName(‘class’); |
| HTMLタグ | document.getElementsByTagName(‘h1’); |
| CSSセレクタ(最初の1つ) | document.querySelector(‘#id .class h1’); |
| CSSセレクタ(全て取得) | document.querySelectorAll(‘#id .class’); |
一般的に、使う時は変数内に入れて使用します。
let myElement = document.getElementById('#sample')親子兄弟要素の取得
既に要素を取得していて、その要素の親子兄弟要素を取得したい場合は下記のように書きます(myElementの部分には要素を取得した変数が入ります)。
| 取得できる要素 | 取得方法 |
|---|---|
| すべての子要素を取得 | myElement.children; |
| 最初の子要素を取得 | myElement.firstElementChild; |
| 最後の子要素を取得 | myElement.lastElementChild; |
| 親要素を取得 | myElement.parentElement; |
| 次の兄弟要素を取得 | myElement.nextElementSibling; |
classの変更
classを変更したい時はclassListを使用します(myElementの部分には要素を取得した変数が入ります)。
| できること | 方法 |
|---|---|
| classの追加 | myElement.classList.add(‘active’); |
| classの削除 | myElement.classList.remove(‘active’); |
| classのトグル | myElement.classList.toggle(‘active’); |
jQueryに慣れているといきなりaddやremoveを付けそうになるので注意が必要です。
要素の変更
既にある要素のテキストを変更したい場合や、HTMLを変更したい場合は下記のように書きます(myElementの部分には要素を取得した変数が入ります)。
| できること | 方法 |
|---|---|
| テキストの変更 | myElement.textContent = ‘変更したいテキスト’; |
| HTMLの変更 | myElement.innerHTML = ‘<span class=”text”>変更したいテキスト</span>’; |
よく使うわけではないのですが、たまに使いたくなったときに、思い出せずに困ります。



HTMLタグの入力をラクにするスニペット集
「EWWW Image Optimizer」を使ってWordPressをWebPに対応する方法
scpコマンドでターミナル接続先のリモートファイルをローカルにダウンロードする方法
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Dashで「Secure Input is Enabled」と表示される場合の対処法
Backlogで2段階認証を設定後、SourceTreeでアカウントエラーが発生する場合の対処法
Bracket Pair ColorizerでVisual Studio Codeの括弧を色分けして見やすくする
コーディングで「スペース」と「タブ」のどちらを使えばいいのか?
Visual Studio Codeの文字サイズやタブサイズの設定方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
macOSの効率化に関するDiscordコミュニティ「CMD-F」を立ち上げました
1Passwordの開発者向け機能(SSH Agent / Environments / 1Password CLI / Developer Watchtower)
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」
Macで複数ディスプレイを使っている場合に便利な設定集
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理