JavaScript での DOM 操作

Dec 20, 2024 pm 08:12 PM

DOM Manipulation in JavaScript

7 日目: JavaScript での DOM 操作

日付: 2024 年 12 月 14 日

JavaScript 学習の 7 日目へようこそ!今日のトピックは、JavaScript の最も魅力的な側面の 1 つである DOM 操作 に焦点を当てます。 DOM 操作を使用すると、Web ページの要素を動的に更新、追加、削除できるため、Web ページがインタラクティブで使いやすくなります。今日のレッスンの終わりまでに、知識を実践するための簡単な ToDo リスト プロジェクトも作成します。


1. DOM とは何ですか?

ドキュメント オブジェクト モデル (DOM) は、Web ドキュメント用のプログラミング インターフェイスです。これは HTML ドキュメントの構造をオブジェクトのツリーとして表し、JavaScript を使用してプログラムで要素にアクセスして操作できるようにします。

DOM が HTML を表現する方法の例を次に示します。

<html>
  <body>
    <h1>Welcome</h1>
    <p>This is a paragraph.</p>
  </body>
</html>
ログイン後にコピー
ログイン後にコピー

上記の DOM ツリーは次のようになります:

Document
 └── html
      └── body
           ├── h1
           └── p
ログイン後にコピー
ログイン後にコピー

2. DOM 要素へのアクセス

いくつかの方法を使用して DOM 内の要素にアクセスできます。

getElementById の使用

let title = document.getElementById("title");
console.log(title); // Logs the element with ID "title"
ログイン後にコピー

getElementsByClassName の使用

let items = document.getElementsByClassName("item");
console.log(items); // Logs all elements with class "item"
ログイン後にコピー

querySelector と querySelectorAll の使用

let firstItem = document.querySelector(".item"); // First element with class "item"
let allItems = document.querySelectorAll(".item"); // All elements with class "item"
ログイン後にコピー

3. DOM 要素の変更

コンテンツの変更

次のコマンドを使用して、要素内のテキストまたは HTML を更新できます。

  • innerText: 表示されるテキストを更新します。
  • innerHTML: HTML コンテンツを更新します。
let title = document.getElementById("title");
title.innerText = "Updated Title"; // Changes visible text
title.innerHTML = "<strong>Updated Title</strong>"; // Adds HTML formatting
ログイン後にコピー

スタイルを変える

要素の CSS スタイルを直接変更できます。

let title = document.getElementById("title");
title.style.color = "blue";
title.style.fontSize = "24px";
ログイン後にコピー

クラスの追加または削除

let box = document.getElementById("box");
box.classList.add("highlight");  // Adds a class
box.classList.remove("highlight"); // Removes a class
ログイン後にコピー

4.イベントの処理

イベントを使用すると、Web ページをインタラクティブにすることができます。ここでは、一般的なイベントの種類とその処理方法をいくつか示します。

インラインイベント処理

HTML 内:

<button onclick="alert('Button Clicked!')">Click Me</button>
ログイン後にコピー

addEventListener の使用

JavaScript を HTML から分離するため、このアプローチが推奨されます。

let button = document.getElementById("btn");
button.addEventListener("click", function () {
  alert("Button Clicked!");
});
ログイン後にコピー

一般的なイベント

  • click: 要素がクリックされるとトリガーされます。
  • mouseover: 要素の上にマウスを置くとトリガーされます。
  • keyup: キーが放されたときにトリガーされます。

例:

<html>
  <body>
    <h1>Welcome</h1>
    <p>This is a paragraph.</p>
  </body>
</html>
ログイン後にコピー
ログイン後にコピー

5.プロジェクト: ToDo リスト

学んだことをシンプルな To-Do リスト アプリケーションに組み合わせてみましょう。

HTML 構造

Document
 └── html
      └── body
           ├── h1
           └── p
ログイン後にコピー
ログイン後にコピー

仕組み

  1. ユーザーが入力フィールドにタスクを入力します。
  2. [タスクを追加] をクリックすると、新しい
  3. が作成されます。タスクの要素。
  4. 各タスクには、タスクを削除するための「削除」ボタンがあります。

6.重要なポイント

  1. DOM アクセス: getElementById や querySelector などのメソッドを使用します。
  2. DOM 変更: コンテンツ、スタイル、クラスを動的に変更します。
  3. イベント処理: addEventListener を使用してページをインタラクティブにします。
  4. 実践プロジェクト: 知識を強化するために ToDo リストを作成します。

7 日目の練習タスク

  1. To Do リストに「完了としてマーク」機能を追加します。
  2. ユーザーが商品とその数量を入力できる買い物リスト アプリを作成します。
  3. 小さなプロジェクトでマウスオーバーやキーダウンなどのイベントタイプを試してください。

次のステップ

明日の 8 日目では、エラー処理とデバッグを検討し、JavaScript コードで予期しない問題を処理する方法を学びます。それではまた!

以上がJavaScript での DOM 操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

独自のJavaScriptライブラリを作成および公開するにはどうすればよいですか? 独自のJavaScriptライブラリを作成および公開するにはどうすればよいですか? Mar 18, 2025 pm 03:12 PM

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

ブラウザでのパフォーマンスのためにJavaScriptコードを最適化するにはどうすればよいですか? ブラウザでのパフォーマンスのためにJavaScriptコードを最適化するにはどうすればよいですか? Mar 18, 2025 pm 03:14 PM

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? Apr 04, 2025 pm 02:42 PM

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

ブラウザ開発者ツールを使用してJavaScriptコードを効果的にデバッグするにはどうすればよいですか? ブラウザ開発者ツールを使用してJavaScriptコードを効果的にデバッグするにはどうすればよいですか? Mar 18, 2025 pm 03:16 PM

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

誰がより多くのPythonまたはJavaScriptを支払われますか? 誰がより多くのPythonまたはJavaScriptを支払われますか? Apr 04, 2025 am 12:09 AM

スキルや業界のニーズに応じて、PythonおよびJavaScript開発者には絶対的な給与はありません。 1. Pythonは、データサイエンスと機械学習でさらに支払われる場合があります。 2。JavaScriptは、フロントエンドとフルスタックの開発に大きな需要があり、その給与もかなりです。 3。影響要因には、経験、地理的位置、会社の規模、特定のスキルが含まれます。

ソースマップを使用して、マイナイドJavaScriptコードをデバッグするにはどうすればよいですか? ソースマップを使用して、マイナイドJavaScriptコードをデバッグするにはどうすればよいですか? Mar 18, 2025 pm 03:17 PM

この記事では、ソースマップを使用して、元のコードにマッピングすることにより、Minified JavaScriptをデバッグする方法について説明します。ソースマップの有効化、ブレークポイントの設定、Chrome DevtoolsやWebpackなどのツールの使用について説明します。

chart.js:パイ、ドーナツ、バブルチャートを始めます chart.js:パイ、ドーナツ、バブルチャートを始めます Mar 15, 2025 am 09:19 AM

このチュートリアルでは、chart.jsを使用してパイ、リング、およびバブルチャートを作成する方法について説明します。以前は、4つのチャートタイプのchart.js:ラインチャートとバーチャート(チュートリアル2)、およびレーダーチャートと極地域チャート(チュートリアル3)を学びました。 パイとリングチャートを作成します パイチャートとリングチャートは、さまざまな部分に分かれている全体の割合を示すのに理想的です。たとえば、パイチャートを使用して、サファリの男性ライオン、女性ライオン、若いライオンの割合、または異なる候補者が選挙で受け取る票の割合を示すことができます。 パイチャートは、単一のパラメーターまたはデータセットの比較にのみ適しています。パイチャートのファンの角度はデータポイントの数値サイズに依存するため、パイチャートは値のあるエンティティをゼロ値で描画できないことに注意してください。これは、割合がゼロのエンティティを意味します

Console.log出力の違い結果:なぜ2つの呼び出しが異なるのですか? Console.log出力の違い結果:なぜ2つの呼び出しが異なるのですか? Apr 04, 2025 pm 05:12 PM

Console.log出力の違いの根本原因に関する詳細な議論。この記事では、Console.log関数の出力結果の違いをコードの一部で分析し、その背後にある理由を説明します。 �...

See all articles