html學習筆記-DOM

來源:互聯網
上載者:User

標籤:

 

html學習筆記-DOMTable of Contents
  • 1. 什麼是 DOM?
  • 2. DOM 節點
  • 3. DOM 方法
  • 4. DOM 屬性
  • 5. DOM 訪問
  • 6. DOM 修改
  • 7. DOM 事件
1 什麼是 DOM?

DOM 是 W3C (全球資訊網聯盟)的標準。
DOM 定義了訪問 HTML 和 XML 文檔的標準:
“W3C 文件物件模型 ( DOM ) 是中立於平台和語言的介面,它允許程式和指令碼動態地訪問和更新文檔的內容、結構和樣式。 ”
W3C DOM 標準被分為 3 個不同的部分:
• 核心 DOM - 針對任何結構化文檔的標準模型
• XML DOM - 針對 XML 文檔的標準模型
• HTML DOM - 針對 HTML 文檔的標準模型
編者註: DOM 是 Document Object Model (文件物件模型)的縮寫。


2 DOM 節點

在 HTML DOM 中,所有事物都是節點。DOM 是被視為節點樹的 HTML。

  • 整個文檔是一個文檔節點
  • 每個 HTML 元素是元素節點
  • HTML 元素內的文本是文本節點
  • 每個 HTML 屬性是屬性節點
  • 注釋是注釋節點

節點父、子和同胞

DOM 處理中的常見錯誤是希望元素節點包含文本。

  • 在本例中:<title>DOM 教程</title>,元素節點 <title>,包含值為 "DOM 教程" 的文本節點。
  • 可通過節點的 innerHTML 屬性來訪問文本節點的值。
3 DOM 方法

方法是我們可以在節點(HTML 元素)上執行的動作。

編程介面

  • 可通過 JavaScript (以及其他程式設計語言)對 HTML DOM 進行訪問。
  • 所有 HTML 元素被定義為對象,而編程介面則是對象方法和對象屬性。
  • 方法是您能夠執行的動作(比如添加或修改元素)。
  • 屬性是您能夠擷取或設定的值(比如節點的名稱或內容)。

一些常用的 HTML DOM 方法:

  • getElementById(id) - 擷取帶有指定 id 的節點(元素)
  • appendChild(node) - 插入新的子節點(元素)
  • removeChild(node) - 刪除子節點(元素)

一些常用的 HTML DOM 屬性:

  • innerHTML - 節點(元素)的文本值
  • parentNode - 節點(元素)的父節點
  • childNodes - 節點(元素)的子節點
  • attributes - 節點(元素)的屬性節點
4 DOM 屬性

屬性是節點(HTML 元素)的值,您能夠擷取或設定。

編程介面

  • 可通過 JavaScript (以及其他程式設計語言)對 HTML DOM 進行訪問。
  • 所有 HTML 元素被定義為對象,而編程介面則是對象方法和對象屬性。
  • 方法是您能夠執行的動作(比如添加或修改元素)。
  • 屬性是您能夠擷取或設定的值(比如節點的名稱或內容)。

innerHTML 屬性

  • 擷取元素內容的最簡單方法是使用 innerHTML 屬性。
  • innerHTML 屬性對於擷取或替換 HTML 元素的內容很有用。

nodeName 屬性

  • nodeName 是唯讀
  • 元素節點的 nodeName 與標籤名相同
  • 屬性節點的 nodeName 與屬性名稱相同
  • 文本節點的 nodeName 始終是 #text
  • 文檔節點的 nodeName 始終是 #document

nodeValue 屬性

  • 元素節點的 nodeValue 是 undefined 或 null
  • 文本節點的 nodeValue 是文本本身
  • 屬性節點的 nodeValue 是屬性值

nodeType 屬性
nodeType 屬性返回節點的類型。nodeType 是唯讀。

元素類型 NodeType
元素 1
屬性 2
文本 3
注釋 8
文檔 9
5 DOM 訪問

訪問 HTML DOM - 尋找 HTML 元素,訪問 HTML 元素等同於訪問節點

  • 通過使用 getElementById() 方法
  • 通過使用 getElementsByTagName() 方法
  • 通過使用 getElementsByClassName() 方法
6 DOM 修改

修改 HTML = 改變元素、屬性、樣式和事件。
使用事件
………

7 DOM 事件
  • 當使用者點擊滑鼠時
  • 當網頁已載入時
  • 當圖片已載入時
  • 當滑鼠移動到元素上時
  • 當輸入欄位被改變時
  • 當 HTML 表單被提交時
  • 當使用者觸發按鍵時

Author: galaxy

Created: 2015-09-23 Wed 15:17

Emacs 24.4.1 (Org mode 8.2.10)

Validate

 

html學習筆記-DOM

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.