PORTFOLIO & WEB DESIGN MEMORANDOM BLOG   
PORTFOLIO & WEB DESIGN MEMORANDOM BLOG   

【JavaScript】要素を操作するためのメソッドについて

JavaScriptには、要素を操作するためのさまざまなメソッドがあります。よく使うものをいくつか紹介します。

よく使われるメソッド

document.getElementById

指定されたIDを持つ要素を取得します。

  1. var element = document.getElementById('myElement');

document.querySelector

CSSセレクタを使用して最初の要素を取得します。

  1. var element = document.querySelector('.myClass'); // 最初の要素を取得

document.querySelectorAll

CSSセレクタを使用して一致するすべての要素を取得し、NodeListとして返します。

  1. var elements = document.querySelectorAll('.myClass'); // すべての要素を取得

document.getElementsByClassName

指定されたクラス名を持つすべての要素をHTMLCollectionとして取得します。

  1. var elements = document.getElementsByClassName('myClass');

document.getElementsByTagName

指定されたタグ名を持つすべての要素をHTMLCollectionとして取得します。

  1. var elements = document.getElementsByTagName('div');

element.getAttribute

指定された属性の値を取得します。

  1. var value = element.getAttribute('href');

element.setAttribute

指定された属性に値を設定します。

  1. element.setAttribute('href', 'https://example.com');

element.classList

クラスを操作するためのメソッド(add, remove, toggle, contains)が含まれています。

  1. element.classList.add('newClass');
  2. element.classList.remove('oldClass');
  3. element.classList.toggle('active');
  4. var hasClass = element.classList.contains('myClass');

element.innerHTML / element.textContent

要素のHTMLまたはテキストの内容を取得または設定します。

  1. element.innerHTML = '<p>New Content</p>';
  2. element.textContent = 'New Content';

element.style

インラインスタイルを設定します。

  1. element.style.color = 'blue';
  2. element.style.backgroundColor = 'yellow';

element.innerHTML と element.textContentの使い方の応用例

element.innerHTML

要素のHTMLコンテンツを取得または設定するプロパティです。HTMLタグも含めて扱うことができます。

要素の内容を変更する

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>innerHTML Example</title>
  5. </head>
  6. <body>
  7.     <div id="content">This is the original content.</div>
  8.     <button onclick="changeContent()">Change Content</button>
  9.     <script>
  10.         function changeContent() {
  11.             var element = document.getElementById('content');
  12.             element.innerHTML = '<p>This is the <strong>new</strong> content.</p>';
  13.         }
  14.     </script>
  15. </body>
  16. </html>

element.textContent

要素のテキストコンテンツを取得または設定するプロパティです。HTMLタグは無視され、純粋なテキストとして扱われます。

要素のテキストを変更する

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>textContent Example</title>
  5. </head>
  6. <body>
  7.     <div id="content">This is the original content.</div>
  8.     <button onclick="changeText()">Change Text</button>
  9.     <script>
  10.         function changeText() {
  11.             var element = document.getElementById('content');
  12.             element.textContent = 'This is the new text content.';
  13.         }
  14.     </script>
  15. </body>
  16. </html>

ユーザーの入力を表示する

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>User Input Example</title>
  5. </head>
  6. <body>
  7.     <input type="text" id="userInput" placeholder="Enter some text">
  8.     <button onclick="displayInput()">Display Input</button>
  9.     <div id="display"></div>
  10.     <script>
  11.         function displayInput() {
  12.             var userInput = document.getElementById('userInput').value;
  13.             var displayElement = document.getElementById('display');
  14.             displayElement.textContent = userInput; // テキストとして表示
  15.         }
  16.     </script>
  17. </body>
  18. </html>

テンプレートを使って動的にコンテンツを生成する

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>Template Example</title>
  5. </head>
  6. <body>
  7.     <div id="container"></div>
  8.     <script>
  9.         function addItem(name, description) {
  10.             var container = document.getElementById('container');
  11.             var newItem = `
  12.                 <div class="item">
  13.                     <h2>${name}</h2>
  14.                     <p>${description}</p>
  15.                 </div>
  16.             `;
  17.             container.innerHTML += newItem; // HTMLとして追加
  18.         }
  19.         addItem('Item 1', 'This is the description for item 1.');
  20.         addItem('Item 2', 'This is the description for item 2.');
  21.     </script>
  22. </body>
  23. </html>

element.textContentのさらに応用した例

aタグがクリックされた時に特定のIDを持つ要素のテキストを変更する

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>Change Text Example</title>
  5. </head>
  6. <body>
  7.     <a href="#" id="changeTextButton">Change Text</a>
  8.     <p id="textElement">This is the original text.</p>
  9.     <script>
  10.         document.getElementById("changeTextButton").addEventListener("click", function(event) {
  11.             event.preventDefault(); // デフォルトの動作(リンク先に飛ぶ)を無効にする
  12.             document.getElementById("textElement").textContent = "This is the new text.";
  13.         });
  14.     </script>
  15. </body>
  16. </html>

このコードの説明

1. aタグにIDを付けて、JavaScriptでアクセスできるようにします(例:id=”changeTextButton”)。

2. pタグにもIDを付けて、変更するテキスト要素を指定します(例:id=”textElement”)。

3. JavaScriptのaddEventListenerメソッドを使って、aタグのクリックイベントにリスナーを追加します。

4. クリックイベントが発生した時に、event.preventDefault()を呼び出してデフォルトの動作(リンク先に飛ぶ)を無効にします。

5. document.getElementById(“textElement”).textContentを使って、テキスト要素の内容を新しいテキストに変更します。

MILMONA   MILMONA   MILMONA   MILMONA   MILMONA   
MILMONA   MILMONA   MILMONA   MILMONA   MILMONA