JavaScript DOM オブジェクト操作

JavaScript DOM オブジェクト操作

1. コア

ブラウザのウェブページはDOMツリー構造である

  • 更新: Domノードを更新
  • Domノードのトラバース: Domノードを取得する
  • 削除: Domノードを削除する
  • 追加:新しいノードを追加する

Domノードを操作するには、まずDomノードを取得する必要があります。

1. Domノードを取得する

 <本文>
    <div id="div1">
   <h1 id="h"></h1>
   <p class="p1"></p>
   </div>
 </本文>

 //タグ別 document.getElementsByTagName('h1');
  //ID別
   ドキュメントの要素IDを取得します('div1');
  //クラスを通して
   ドキュメントの要素をクラス名で取得します('p1');
  //親ノードを取得する h.parentElement
  //親ノードの下にあるすべての子ノードを取得します。div1.children[index];
  //現在のノードの下の最初のノード div1.firstElementChild を取得します。
  //現在のノードの下の最後のノード div1.lastElementChild を取得します。
  //次のノードを取得します h.nextElementSibling;

2. ノードの更新

   //テキストの値を更新します div1.innerText='テキストの値を変更します'; 
   //ハイパーテキストを更新し、HTML テキスト タグを解析できます div1.innerHTML='<strong>ハイパーテキストの追加</storng>';
   //CSSを更新
   div1.style.color='赤';
   div1.style.fontSize='20px';//CamelCase 命名 div1.style.padding='2em';

2.1 実践演習

IDを取得

変更前

操作入力

3. Domノードを削除する

ノードを削除する手順:最初に親ノードを取得し、次に親ノードを介して自分自身を削除します

let self=document.getElementById('p1');//削除されたノードを取得します。let father=self.parentElement//親ノードを取得します。father.removeChild(self);//親ノードを介してノードを削除します。

注意:ノードを削除すると、サブノード配​​列は常に変化するため、配列を通じて静的に連続的に削除することはできず、複数回動的に削除することしかできません。

4. ノードを挿入する

Dom ノードを取得します。この Dom ノードが空であると仮定すると、 innerHtMLを通じて要素を追加できます。ただし、このDomノードにすでに要素がある場合は上書きされます。

 <本文>
 
  <p id="p1">Java</p>
  <div id="div1">
  <p>JavaScript</p>
  <p>css</p>
  <p>こ</p>
  </div>
 </本文>

4.1 既存のタグを挿入する

a=document.getElementById('div1'); とします。
b = document.getElementById('p1'); とします。
a.appendChild(b);//追加

効果

4.2 挿入する新しいタグを作成する

   let a=document.createElement('p');//ノード p タグを作成 a.id='p2';
   a.innerText='こんにちは、シャオシェン';
   let list = document.getElementById('div1'); //div1のIDを取得
   list.appendChild(a); //子ノードを追加 //ラベルノードを作成 let a=document.createElement('script');
   a.setAttribute('type','text/javascript');

効果:

 //スタイルタグノードを作成 let st=document.createElement('style');
   st.setAttribute('type','text/css');
   st.innerHTML='body{背景色:ピンク;}';
   let hd = document.getElementsByTagName('head')[0]; //headは0番目の要素であることに注意してください。
   hd.appendChild(st);

効果:

4.3 子ノードの前に挿入 (insertBefore)

<html>
 <ヘッド>
  <メタ文字セット="utf-8">
  <タイトル></タイトル>
 </head>
 <本文>
 
  <p id="p1">Java</p>
  <div id="div1">
  JavaScript
  <p id='p2'>css</p>
  <p id="p3">C</p>
  </div>
  <script type="text/javascript">
  // 子ノードを持つ親ノード let list = document.getElementById('div1');
  self = document.getElementById('p2'); とします。
  前に=document.getElementById('p1');
  リストに自分自身を挿入します。

  </スクリプト>
 </本文>
</html>

効果:

JavaScript Dom オブジェクト操作に関するこの記事はこれで終わりです。より関連性の高い JavaScript Dom オブジェクト操作については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript ドキュメント オブジェクト モデル DOM
  • JavaScript のドキュメント オブジェクト モデル (DOM)
  • JavaScript 変数 Dom オブジェクトのすべてのプロパティ
  • JS を使用して DOM オブジェクト内の指定されたノードにアクセスする方法の例
  • JS を使用して DOM オブジェクト (タグ) のカスタム属性を読み取る方法について簡単に説明します。
  • JS の基本における DOM 内のドキュメント オブジェクトの一般的な属性メソッドの詳細な説明
  • DOM 内の要素オブジェクトの属性メソッドの詳細な説明 (js 基本編)
  • JavaScriptはDOMオブジェクトセレクタを実装する
  • JavaScript DOMオブジェクトの詳細な理解
  • JavaScript - DOM操作 - Window.documentオブジェクトの詳しい説明
  • jQueryオブジェクトとJavaScriptオブジェクト、つまりDOMオブジェクトは相互に変換されます
  • jsオブジェクト関係図はDOM操作を容易にします
  • JavaScript DOM オブジェクト学習サンプルコード
  • DOMオブジェクトに対するJavaScript操作の詳細な説明

<<:  docker createコマンドの使用方法

>>:  電子メールの HTML ページを作成するための原則の概要

推薦する

JavaScript配列をツリー構造に変換する方法

1. 需要バックエンドは、フロントエンドがツリー構造(重複データなし)に変換するためのデータを提供し...

負の距離(共感) - 相互影響の反復プロセス

ネガティブな距離は共感を意味します。序文(疑問の提起):プロダクトマネージャーは機能を把握します。機...

Linux インストール Apache サーバー構成プロセス

袋を用意するインストールApacheがすでにインストールされているかどうかを確認するrpm -qa ...

JavaScript のショートカットのヒント

目次1. 配列を結合する2. 配列をマージする(最初に) 3. 配列の複製4. 構造化分解割り当て5...

JavaScript 高度なカスタム例外

目次1. コンセプト1.1 エラーと例外とは何ですか? 1.2 異常の分類2. 例外処理2.1try...

JavaScript のクロージャの詳細な説明

導入クロージャは JavaScript の非常に強力な機能です。いわゆるクロージャは関数内の関数です...

Tomcat maxPostSize設定実装プロセス分析

1. maxPostSize を設定する理由は何ですか? tomcat コンテナには送信データのサイ...

11 の素晴らしい JavaScript コード リファクタリングのベスト プラクティスの概要

目次1. 関数の抽出2. 重複した条件付きスニペットを結合する3. 条件分岐文を関数に抽出する4. ...

TypeScript 環境を構築して VSCode にデプロイする詳細な手順

目次TypeScript環境の構築ステップ1: Taobaoミラーをダウンロードするステップ2: T...

React tsx はランダムな検証コードを生成します

React tsxは参照用にランダムな検証コードを生成します。具体的な内容は次のとおりです。最近、t...

Echarts 基本入門: 棒グラフと折れ線グラフの一般的な構成

1eChartsの基本手順4つのステップ1 DOMコンテナを見つける2 初期化3 設定オプション4 ...

Dockerで新しいイメージを手動で構築する方法

この記事では、Docker で新しいイメージを手動で構築する方法を紹介し、皆さんと共有します。詳細は...

docker で php+nginx+swoole+mysql+redis 環境を構築する方法

オペレーティングシステム: Alibaba Cloud ESC インスタンス centos7.4ソフ...

HTML の 5 種類のスペースの意味

HTML には、幅の異なる 5 つのスペース エンティティが用意されています。非改行スペース ( )...

VSCode の Remote-SSH を使用して Linux に接続し、リモート開発を行う

Remote-SSHをインストールして設定するまず VSCode を開き、拡張機能を見つけて、Rem...