今回は、JSを使用してDOMノードを追加、削除、変更、確認する際の注意事項を紹介します。以下で実際のケースを見てみましょう。
DOM の意味: DOM は、ブラウザー プログラミングに基づいた一連の API インターフェイスであり、Web ページが読み込まれるときに JS にノードを操作する機能を提供します。ブラウザはページのドキュメント オブジェクト モデルを作成します。
ノード: W3C の HTML DOM 標準に従って、HTML ドキュメント内のすべてのコンテンツは 1 つのノードです。 1. ドキュメント全体が 1 つのドキュメント ノードです。各ノードは HTML 要素
です。3. HTML 要素内のテキストは
属性ノードです。したがって、HTML DOM は HTML になります。は、ノード ツリーと呼ばれるツリー構造とみなされます。 HTML DOM を通じて、ノード ツリー内のすべてのノードにアクセスできます。
1. ノードを作成し、ノード
1 を追加します。 code>createElement (ラベル名) は要素ノード (特定の要素) を作成します
appendChild (node)
ノードを追加します 3. text content)テキストノードを作成します
var op = document.createElement("p");//创建一个p元素,因为是document对象的方法。 var opText = document.createTextNode("666");//创建一个文本节点内容是“666”,因为是document对象的方法。 op.appendChild(opText);//父级.appendChild(子节点);在p元素中添加“666” document.body.appendChild(op);//父级.appendChild(子节点);;document.body是指向元素 document.documentElement.appendChild(createNode);//父级.appendChild(子节点);;document.documentElement是指向元素
2. ノードを挿入します
1. appendChild (node)
もノードを挿入することで追加できます。既存の要素。その要素を元の位置から新しい位置に移動します。 createElement(标签名)
创建一个元素节点(具体的一个元素)。
2、appendChild(节点)
追加一个节点。
3、createTextNode(节点文本内容)
创建一个文本节点
var op = document.createElement("p");//创建一个p元素,因为是document对象的方法。 var op1 = document.getElementById("p1"); document.body.insertBefore(op,op1);//在op1节点前插入新创建的元素节点 ul.appendChild(ul.firstChild); //把ul的第一个元素节点移到ul子节点的末尾
二、插入节点
1、appendChild(节点)
也是一种插入节点的方式,还可以添加已经存在的元素,会将其元素从原来的位置移到新的位置。
2、insertBefore(a,b)
是参照节点,意思是a节点会插入b节点的前面。
var removeChild = document.body.removeChild(p1);//移除document对象的方法p1
三、删除、移除节点
1、removeChild(节点)
删除一个节点,用于移除删除一个参数(节点)。其返回的被移除的节点,被移除的节点仍在文档中,只是文档中已没有其位置了。
var replaceChild= document.body.replaceChild(p1,p2); //将p1替换p2
四、替换节点
1、replaceChild(插入的节点,被替换的节点)
2. insertBefore(a,b)
は、ノードが前に挿入されることを意味します。 b ノード。
for (var i = 0; i <p style="text-align: left;"><span style="font-size: medium"><strong> 3. ノードを削除します </strong></span></p><p style="text-align: left;">1. <code>removeChild(node)</code> によって返される削除されたノード。まだドキュメント内にありますが、その位置はドキュメント内ではなくなりました <span style="color: #0000ff"></span></p><p style="text-align: left;"> 4. ノードを置き換えます </p><p style="text-align: left;"><span style="color: #0000ff"></span> 1. <code>replaceChild(Inserted node, replacenode) </code>。ノードを置換し、2 つのパラメーターを受け入れます。最初のパラメーターは挿入されるノードで、2 番目のパラメーターは置換されるノード </p><p style="text-align: left;"><span style="color: #0000ff"></span>5 を返します。 childNodes </p>テキストノードと要素ノードの子ノードが含まれます。<p style="text-align: left;"></p><pre class="brush:php;toolbar:false">var oList = document.getElementById('list');//oList是做的ul的对象 var oChild=document.getElementById('child');//oChild是做的ul中的一个li的对象 //通过子节点查找父节点//parentNode:获取父节点 console.log(oChild.parentNode);//在控制器日志中显示父节点 console.log(oList.children);//在控制器日志中显示oList子节点 console.log(children.length)//子节点的个数2、
A、childrenも子ノードを取得でき、それぞれIE6-8B、parentNode
と互換性があります。 : 親ノードを取得します//查找第一个子节点的封装函数 function firstChild(ele) { if (ele.firstElementChild) {//如果该条件是true则在该浏览器(IE或非IE)中兼容 return ele.firstElementChild; } else { return ele.firstChild; } } firstChild(oList).style.background = 'red';//将获得的节点的背景变成红色3、A、firstChild; 最初の子ノードを見つけます。 ブラウザ互換性の問題があります: firstChild は IE と互換性がありますが、firstElementChild は IE と互換性がありません。
//查找最后一个子节点的封装函数 function lastChild(ele) { if (ele.lastElementChild) {//如果该条件是true则在该浏览器(IE或非IE)中兼容 return ele.lastElementChild; } else { return ele.lastChild; } } lastChild(oList).style.background = 'red';//将获得的节点的背景变成红色B、lastChild; lastElementChild最後の子ノードを検索します。 ブラウザ互換性の問題があります: lastChild は IE と互換性がありますが、lastElementChild は IE と互換性がありません。
//查找下一个兄弟节点的封装函数 function nextSibling(ele) { if (ele.nextElementSibling) { return ele.nextElementSibling; } else { return ele.nextSibling; } } nextSibling(oMid).style.background = 'red';C、nextSibling; nextElementSibling 次の兄弟ノードを検索します。 互換性の問題もあります。
//查找上一个兄弟节点的封装函数 function previousSibling(ele) { if (ele.nextElementSibling) { return ele.previousElementSibling; } else { return ele.previousSibling; } } previousSibling(oMid).style.background = 'red';D、
previousSibling
;previousElementSibling前の兄弟ノードを検索します。 互換性の問題
もあります。
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。 推奨読書
以上がJS は DOM ノードを追加、削除、変更、確認しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

はい、JavaScriptのエンジンコアはCで記述されています。1)C言語は、JavaScriptエンジンの開発に適した効率的なパフォーマンスと基礎となる制御を提供します。 2)V8エンジンを例にとると、そのコアはCで記述され、Cの効率とオブジェクト指向の特性を組み合わせて書かれています。3)JavaScriptエンジンの作業原理には、解析、コンパイル、実行が含まれ、C言語はこれらのプロセスで重要な役割を果たします。

JavaScriptは、Webページのインタラクティブ性とダイナミズムを向上させるため、現代のWebサイトの中心にあります。 1)ページを更新せずにコンテンツを変更できます。2)Domapiを介してWebページを操作する、3)アニメーションやドラッグアンドドロップなどの複雑なインタラクティブ効果、4)ユーザーエクスペリエンスを改善するためのパフォーマンスとベストプラクティスを最適化します。

CおよびJavaScriptは、WebAssemblyを介して相互運用性を実現します。 1)CコードはWebAssemblyモジュールにコンパイルされ、JavaScript環境に導入され、コンピューティングパワーが強化されます。 2)ゲーム開発では、Cは物理エンジンとグラフィックスレンダリングを処理し、JavaScriptはゲームロジックとユーザーインターフェイスを担当します。

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。

Pythonはデータサイエンスと自動化により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、データ処理とモデリングのためにNumpyやPandasなどのライブラリを使用して、データサイエンスと機械学習でうまく機能します。 2。Pythonは、自動化とスクリプトにおいて簡潔で効率的です。 3. JavaScriptはフロントエンド開発に不可欠であり、動的なWebページと単一ページアプリケーションの構築に使用されます。 4. JavaScriptは、node.jsを通じてバックエンド開発において役割を果たし、フルスタック開発をサポートします。

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ホットトピック









