HTML DOM入門_PowerNode Javaアカデミー

HTML DOM入門_PowerNode Javaアカデミー

DOMとは何ですか?

JavaScript を使用すると、HTML ドキュメント全体を再構築できます。ページ上の項目を追加、削除、変更、または並べ替えることができます。ページ上の何かを変更するには、JavaScript が HTML ドキュメント内のすべての要素にアクセスする必要があります。このアクセスは、HTML 要素を追加、移動、変更、または削除するためのメソッドとプロパティとともに、ドキュメント オブジェクト モデル (DOM) を通じて取得されます。 1998 年に、W3C は DOM 仕様の最初のレベルを公開しました。この仕様により、HTML ページ内の個々の要素にアクセスして操作できるようになります。すべてのブラウザがこの標準を実装しているため、DOM 互換性の問題はほとんどありません。 DOM は、JavaScript によって HTML、XHTML、および XML ドキュメントの読み取りと変更に使用できます。

DOM はさまざまな部分 (コア、XML、HTML) とレベル (DOM レベル 1/2/3) に分かれています。

コアDOM

構造化文書の標準的なオブジェクトセットを定義します

XML DOM

XML文書の標準オブジェクトのセットを定義します

HTML DOM

HTML ドキュメントのオブジェクトの標準セットを定義します。

ノード

DOM によれば、HTML ドキュメント内の各コンポーネントはノードです。

DOM では以下が指定されています:

  • 文書全体が文書ノードである
  • 各HTMLタグは要素ノードです
  • HTML要素に含まれるテキストはテキストノードです
  • 各HTML属性は属性ノードである
  • コメントはコメントノードに属します

ノード階層

ノードは互いに階層的な関係を持ちます。 HTML ドキュメント内のすべてのノードはドキュメント ツリー (またはノード ツリー) を形成します。 HTML ドキュメント内の各要素、属性、テキストなどは、ツリー内のノードを表します。ツリーはドキュメント ノードから始まり、ツリーの最下位レベルのすべてのテキスト ノードに到達するまでそこから分岐し続けます。

次の図はドキュメントツリー(ノードツリー)を示しています。

ドキュメントツリー(ノード数)

次の HTML ドキュメントを検討してください。

<html>  
  <ヘッド>  
   <title>DOM チュートリアル</title>   
  </head>   
 <本文>   
    <h1>DOM レッスン 1</h1>   
   <p>こんにちは世界!</p>   
 </本文>   
</html>

上記のノードはすべて相互に関係を持っています。ドキュメント ノード以外のすべてのノードには親ノードがあります。たとえば、<head> と <body> の親ノードは <html> ノードであり、テキスト ノード「Hello world!」の親ノードは <p> ノードです。ほとんどの要素ノードには子ノードがあります。たとえば、<head> ノードには 1 つの子、<title> ノードがあります。 <title> ノードにも、テキスト ノード「DOM Tutorial」という 1 つの子があります。ノードが同じ親ノードを共有する場合、それらは兄弟(兄弟ノード)です。たとえば、<h1> と <p> は、親ノードが <body> ノードであるため、兄弟です。ノードには子孫が存在する場合もあります。子孫とは、ノードのすべての子ノード、またはそれらの子ノードの子などです。たとえば、すべてのテキスト ノードは <html> ノードの子孫であり、最初のテキスト ノードは <head> ノードの子孫です。ノードには祖先が存在する場合もあります。祖先はノードの親、またはその親の親などです。たとえば、すべてのテキスト ノードは <html> ノードを祖先として持つことができます。

<<:  JavaScript のドキュメント オブジェクト モデル (DOM)

>>:  MySQLのUPDATE文の落とし穴を記録する

推薦する

forループ内のvarの問題の解決

序文var は ES5 における変数宣言方法です。var で変数を宣言するとループ変数がグローバル変...

JavaScript の基本演算子

目次1. オペレーター要約する1. オペレーター演算子は、代入、比較、算術演算などの機能を実装するた...

HTML+CSSを使用してマウスの動きを追跡する

ユーザーがプライバシーを意識するようになり、オンライン トラッキングに対する予防策を強化するにつれて...

mysql5.5.28 のインストール チュートリアルは非常に詳細です。

参考までにmysql5.5.28のインストールチュートリアルです。具体的な内容は次のとおりです。イン...

Vue ディレクティブ v-html と v-text

目次1. v-text テキストレンダリング命令2. v-html 1. v-text テキストレン...

Dockerでイメージ情報を表示する方法

この記事では、Dockerでイメージ情報を表示する方法を学ぶ必要があります。 1. imagesコマ...

Node.js でメモリ効率の高いアプリケーションを作成する方法

目次序文問題: 大きなファイルのコピーNodeJS のストリームとバッファバッファストリーム解決策 ...

基礎知識: ウェブサイトのアドレスの前の http はどういう意味ですか?

HTTPとは何ですか?ウェブサイトを閲覧したいときは、ブラウザのアドレス バーにウェブサイトのアド...

CSS3は水平方向の中央揃え、垂直方向の中央揃え、水平方向と垂直方向の中央揃えのサンプルコードを実装しています。

フロントエンドの担当者であれば、面接でも仕事中でも、「CSS を使用して中央揃えにする」という効果に...

CentOS 8 に Postfix メール サーバーをインストールして設定する方法

Postfix は、Linux システム上で電子メールをルーティングまたは配信するために使用される無...

Linux に MySQL 8.0.x をインストールするための完全な手順

マイグレーションMySQL 入門MySQL はもともとオープンソースのリレーショナル データベース管...

サーバーの購入と初期構築方法

しばらくサーバーいじってなかったけど、やることがなくなったのでモバイルワークスに行って海外サーバーを...

MySQL5.7 シングルインスタンス自動起動サービスの設定プロセス

1.MySQLのバージョン [root@clq システム]# mysql -v MySQL モニター...

Linux 環境に nginx をインストールするチュートリアル

目次1. 必要な環境をインストールする //gccをインストールする yum で gcc-c++ を...

mysql8.0.19 winx64バージョンのインストール問題を解決する

MySQL は、スウェーデンの会社 MySQL AB によって開発されたオープンソースの小規模なリレ...