以前は、childNodes プロパティまたは firstChild を使用して子要素をトラバースできましたが、子要素が ELement 要素であるかどうかを判断する必要がありました。 その後、W3C は要素トラバーサル仕様を通じてトラバーサル用の新しい属性セットを定義しました。これにより、判断の必要がなくなり、非常に便利になりました。 1. ChildNodes属性のトラバーサル子要素は通常、 次のコード例を参照してください。 <div class="article"> <p>段落 1</p> <p>段落 2</p> <p>第3段落</p> </div> <script type="text/javascript"> childList を document.querySelector(".article").childNodes とします。 コンソールにログ出力します。 // コンソール出力: // ノードリスト(7) 1 </スクリプト> コンソールビュー効果: 子要素の空白ノードをトラバースします。 取得された子要素には、改行、インデント、スペースなどの空の 次に、子要素が Element タイプであるかどうかを判断する必要があります。 childList を document.querySelector(".article").childNodes とします。 // 子要素をトラバースする childList.forEach((item, index) => { if (item.nodeType == 1) { // 要素タイプかどうかを確認します console.log(item); } }); // コンソール出力: // 3 p 要素 2. 要素シリーズ属性のトラバーサル要素トラバーサルは、DOM 要素に 5 つのプロパティを追加します。
これらの新しい属性を使用すると、 上記の例を引き続き取り上げます。 // 最初の要素を取得します。let currentElement = document.querySelector(".article").firstElementChild; // 子要素を走査します while (currentElement) { console.log(現在の要素); // 次の要素を取得します。currentElement = currentElement.nextElementSibling; } これにより、プロセスがより簡潔になります。 現在、IE9 以降とすべての最新ブラウザがこれらのプロパティをサポートしています。 これで、 以下もご興味があるかもしれません:
|
<<: スケルトン スクリーンの読み込みプレースホルダー アニメーション効果を実装するための CSS + HTML (アニメーション付き)
>>: リンク使用時にハイパーリンクがジャンプしないようにする方法
ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...
本日実装する機能は、以下の機能です。vue.js シミュレーションカレンダープラグインさて、もう無駄...
ジブの紹介Jib は Google が開発した、Java アプリケーションの Docker および ...
偶然にも、SQL ステートメントを異なる MySQL インスタンスで実行すると、異なる結果が生成され...
フォームを入力不可にしたい場合は、フォームを次のように設定します。コードをコピーコードは次のとおりで...
Redisイメージをダウンロードする docker pull yyyyttttwww/redis を...
目次1. 背景2. テーブルロックによるクエリの遅延3. オンラインでテーブル構造を変更するとどのよ...
この記事では、カラフルな太陽のハロー効果を実現するためのJavaScriptキャンバスの具体的なコー...
1. 一般的な使用法: (1)%で使用する% は 1 つ以上の文字のワイルドカードを表します。たとえ...
問題: MySQLテーブル内の自動増分IDのオーバーフローによりビジネスブロックが発生した背景: t...
導入: MySQL データベースの仕様に関しては、皆さんも何らかのドキュメントを読んだことがあると思...
私が最も頻繁に使用するコマンドは次の通りです:選択肢CDギットls ssh須藤数週間前、私はこの R...
概要リレーショナル データベースでは、インデックスは、データベース テーブル内の 1 つ以上の列の値...
要件は、製品の評価データを渡すことであり、ページには対応する星の数が表示されます。 1. 異なる評価...
序文前回の記事ではNode.jsのインストールと設定を紹介しました。今回はVScodeでbableを...