
- HTML 教程
- HTML - 首頁
- HTML - 路線圖
- HTML - 簡介
- HTML - 歷史與發展
- HTML - 編輯器
- HTML - 基本標籤
- HTML - 元素
- HTML - 屬性
- HTML - 標題
- HTML - 段落
- HTML - 字型
- HTML - 塊級元素
- HTML - 樣式表
- HTML - 格式化
- HTML - 引用
- HTML - 註釋
- HTML - 顏色
- HTML - 圖片
- HTML - 圖片地圖
- HTML - 內嵌框架 (iframe)
- HTML - 短語元素
- HTML - 元標籤
- HTML - 類
- HTML - ID
- HTML - 背景
- HTML 表格
- HTML - 表格
- HTML - 表頭與標題
- HTML - 表格樣式
- HTML - 表格列組 (colgroup)
- HTML - 巢狀表格
- HTML 列表
- HTML - 列表
- HTML - 無序列表
- HTML - 有序列表
- HTML - 定義列表
- HTML 連結
- HTML - 文字連結
- HTML - 圖片連結
- HTML - 郵箱連結
- HTML 顏色名稱與值
- HTML - 顏色名稱
- HTML - RGB
- HTML - HEX
- HTML - HSL
- HTML 表單
- HTML - 表單
- HTML - 表單屬性
- HTML - 表單控制元件
- HTML - 輸入屬性
- HTML 多媒體
- HTML - 影片元素
- HTML - 音訊元素
- HTML - 嵌入多媒體
- HTML 頭部
- HTML - head 元素
- HTML - 新增 Favicon
- HTML - JavaScript
- HTML 佈局
- HTML - 佈局
- HTML - 佈局元素
- HTML - 使用 CSS 進行佈局
- HTML - 響應式設計
- HTML - 符號
- HTML - 表情符號
- HTML - 樣式指南
- HTML 圖形
- HTML - SVG
- HTML - Canvas
- HTML APIs
- HTML - Geolocation API
- HTML - 拖放 API
- HTML - Web Workers API
- HTML - WebSocket
- HTML - Web 儲存
- HTML - 伺服器傳送事件
- HTML 其他
- HTML - 文件物件模型 (DOM)
- HTML - MathML
- HTML - 微資料
- HTML - IndexedDB
- HTML - 網頁訊息傳遞
- HTML - Web CORS
- HTML - WebRTC
- HTML 演示
- HTML - 音訊播放器
- HTML - 影片播放器
- HTML - 網頁幻燈片
- HTML 工具
- HTML - Velocity Draw
- HTML - 二維碼
- HTML - Modernizr
- HTML - 驗證
- HTML - 顏色選擇器
- HTML 參考
- HTML - 速查表
- HTML - 標籤參考
- HTML - 屬性參考
- HTML - 事件參考
- HTML - 字型參考
- HTML - ASCII 碼
- ASCII 碼錶查詢
- HTML - 顏色名稱
- HTML - 實體
- MIME 媒體型別
- HTML - URL 編碼
- 語言 ISO 程式碼
- HTML - 字元編碼
- HTML - 已棄用的標籤
- HTML 資源
- HTML - 快速指南
- HTML - 有用資源
- HTML - 顏色程式碼生成器
- HTML - 線上編輯器
HTML - DOM 元素 childNodes 屬性
在 HTML DOM 中,**childNodes** 屬性檢索元素的所有子節點,包括元素、文字節點和註釋。這是一個只讀屬性,通常用於內容操作。
與 childElementCount 不同,它涵蓋所有型別的子節點。
語法
element.childNodes;
返回值
此屬性返回一個 NodeList,其中包含指定元素的所有子節點。
HTML DOM 元素 'childNodes' 屬性示例
以下是一些顯示 HTML DOM 中 childNodes 屬性用法的示例。
計算並顯示子節點數量
此示例顯示了 childNodes 屬性的基本用法,用於動態計算和顯示子元素的數量。以下程式碼包含一個按鈕,用於計算和顯示'父' div 內的子元素('<p>' 和 '<div>')的數量。
<!DOCTYPE html> <html> <head> <title>Child Nodes Example</title> </head> <body> <h1>HTML - DOM Element</h1> <h2>ChildNodes Property</h2> <div id="parent"> <p>This is a parent paragraph.</p> <div> <p>This is a nested paragraph.</p> <span>This is a nested span element.</span> </div> </div> <button onclick="countChildNodes()"> Count Child Nodes </button> <div id="output"></div> <script> function countChildNodes() { const count = document.getElementById ('parent').querySelectorAll('*').length; document.getElementById('output').textContent = `Number of child elements: ${count}`; } </script> </body> </html>
修改子節點
此示例顯示如何使用 childNodes 屬性來修改 HTML 元素內的子節點。以下程式碼包含一個按鈕,用於移除最初的 <p> 段落,並動態地向 'parent' 新增一個新的 <h2> 標題。
<!DOCTYPE html> <html lang="en"> <head> <title>Modifying Child Nodes</title> </head> <body> <h1>HTML - DOM Element</h1> <h2>childNodes property</h2> <p>Click the button to modify child nodes.</p> <div id="parent"> <p>This is a paragraph.</p> <ul> <li>Item 1</li> <li>Item 2</li> </ul> <span>Another child</span> </div> <button onclick="modifyChildNodes()"> Modify Child Nodes </button> <script> function modifyChildNodes() { const parentElement = document.getElementById('parent'); const firstChild = parentElement.childNodes[0]; parentElement.removeChild(firstChild); const newElement = document.createElement('h2'); newElement.textContent = 'New Heading'; parentElement.appendChild(newElement); } </script> </body> </html>
使用 'childNodes' 屬性訪問子節點
此示例顯示如何使用 childNodes 屬性訪問和顯示有關 id 為 "parent" 的 <div> 元素內子節點(<p> 元素和 <span> 元素)的資訊。
<!DOCTYPE html> <html> <head> <title>ChildNodes Property Example</title> </head> <body> <h1>HTML - DOM Element</h1> <h2>ChildNodes Property </h2> <p>It displays the parent node's child nodes</p> <p>Whitespace between elements are text nodes.</p> <div id="parent"> <p>This is the first paragraph.</p> <p>This is the second paragraph.</p> <span>This is a span element.</span> </div> <button onclick="displayChildNodes()"> Display Child Nodes </button> <div id="output"></div> <script> function displayChildNodes() { const parent = document.getElementById('parent'); const childNodes = parent.childNodes; let res = "<p><strong>Child Nodes:</strong></p>"; childNodes.forEach(node => { res+=`<p>${node.nodeName}-${node.nodeType}</p>`; }); document.getElementById('output').innerHTML =res; } </script> </body> </html>
動態新增和移除子節點
此示例幫助我們理解如何動態地使用 childNodes 屬性來新增和移除子節點。以下程式碼透過點選“新增”按鈕新增一個包含新內容的新 <p> 節點,並透過點選“移除”按鈕移除最後一個子節點。
<!DOCTYPE html> <html> <head> <title>Manipulating Child Nodes</title> </head> <body> <h1>HTML - DOM Element</h1> <h2>childNodes Property</h2> <h2>Manipulating Child Nodes</h2> <div id="container"> <p>This is the first paragraph.</p> <span>This is a span element.</span> </div> <button onclick="addNewNode()">Add New Node</button> <button onclick="removeLastNode()"> Remove Last Node </button> <div id="output"></div> <script> const container=document.getElementById('container'); function addNewNode() { container.innerHTML+= '<p>This is a new paragraph added dynamically.</p>'; updateOutput(); } function removeLastNode() { const childNodes = container.children; if (childNodes.length > 0) { container.removeChild(container.lastElementChild); updateOutput(); } } function updateOutput() { const childNodes = container.children; let res = "<p><strong>Current Child Nodes:</strong></p>"; Array.from(childNodes).forEach(node => { res+=`<p>${node.nodeName}:${node.textContent}</p>`; }); document.getElementById('output').innerHTML = res; } </script> </body> </html>
支援的瀏覽器
屬性 | ![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|---|
childNodes | 是 | 是 | 是 | 是 | 是 |
html_dom_element_reference.htm
廣告