文檔對象模型 Document Object Modelcss
文檔對象模型 是表示和操做 HTML和XML文檔內容的基礎APInode
文檔對象模型,是W3C組織推薦的處理可擴展標誌語言的標準編程接口編程
核心 DOM - 針對任何結構化文檔的標準模型數組
XML DOM - 針對XML文檔的標準模型瀏覽器
HTML DOM - 針對HTML 文檔的標準模型cookie
1級domapp
1級DOM在1998年10月份成爲W3C的提議,由DOM核心與DOM HTML兩個模塊組成。DOM核心能映射以XML爲基礎的文檔結構,容許獲取和操做文檔的任意部分。DOM HTML經過添加HTML專用的對象與函數對DOM核心進行了擴展。
2級domdom
2級DOM經過對象接口增長了對鼠標和用戶界面事件、範圍、遍歷(重複執行DOM文檔)和層疊樣式表(CSS)的支持。
3級dom函數
3級DOM經過引入統一方式載入和保存文檔和文檔驗證方法對DOM進行進一步擴展,DOM3包含一個名爲「DOM載入與保存」的新模塊,DOM核心擴展後可支持XML1.0的全部內容,包括XML Infoset、 XPath、和XML Base。
文檔中每個部分都是節點,包過document 元素 屬性 文本...url
Document Element 元素 Attr 屬性
Text 文本
Comment 註釋
nodeName 節點名字
document : #document
element : 標籤名
attr : 屬性名
text : #text
comment : #comment
nodeValue 節點值
document : null
element : null
attr : 屬性值
text : 文本內容
comment : 註釋內容
nodeType 節點類型
document : 9
element : 1
attr : 2
text : 3
coment : 8
document.getElementById()
id屬性可自動成爲被腳本訪問的全局變量
document.getElementsByName() IE9+和標準瀏覽器認爲 全部的元素都有name IE9- 認爲只有個別元素有name 表單和表單控件 img iframe embed object .... docuemnt會爲某些元素建立以元素name爲名字的屬性 <form> <img> .......
document.getElementsByTagName()
element.getElementsByTagName()
document.images 全部img的引用
document.forms 全部表單的引用
document.links 全部超連接的引用
docuent.anchors 全部錨點的引用
document.getElementsByClassName()
element.getElementsByClassName()
document.querySelectorAll()
document.querySelector()
element.querySelectorAll()
element.querySelector()
document.all
父節點 父元素
子節點 子元素
同輩節點 同輩元素
祖先節點 祖先元素
後代節點 後代元素
parentNode 父節點
childNodes 全部子節點的集合
firstChild 第一個子節點
lastChild 最後一個子節點
nextSibling 下一個兄弟節點
previousSibling 上一個兄弟節點
parentElement 父元素 大部分狀況下 parentElement 等同於 parentNode
children 全部子元素的集合
firstElementChild IE9+ 第一個子元素
lastElementChild IE9+ 最後一個子元素
nextElementSibling IE9+ 下一個兄弟元素
previousSibling IE9+ 上一個兄弟元素
childElementCount IE9+ 子元素的數量
ownerDocument 返回元素所屬的文檔對象
HTMLElement對象映射了元素的HTML屬性
getAttribute(attrname)獲取自定義或內置屬性的值
setAttribute(attrname,value) 設置自定義或內置屬性
hasAttribute(attrname) 判斷是否存在該屬性
removeAttribute() 移出自定義或內置的屬性
attibutes 屬性
setAttributeNode()
getAttributeNode()
document.createAttribute() 建立屬性節點
innerHTML
outerHTML
textContent IE9+
inner Text 會忽略多餘空白
appendData() 向文本節點追加內容
deleteData() 刪除文本節點的一部份內容
insertData() 向文本節點中插入內容
replaceData() 替換內容
substringData() 截取內容
document.createTextNode()
document.createElement()
appendChild() 在元素的最後追加一個子元素
insertBefore() 在元素指定的位置插入一個子元素
removeChild()
replaceChild(new_node, old_node)
cloneNode()
參數
true 克隆元素以及全部的厚點節點
false 僅僅克隆節點自己
document.createDocumentFragment()能夠建立該對象
DocumentFragment 接口表示文檔的一部分(或一段)。更確切地說,它表示一個或多個鄰接的 Document 節點和它們的全部子孫節點。
DocumentFragment 節點不屬於文檔樹,繼承的 parentNode 屬性老是 null。
請求把一個 DocumentFragment 節點插入文檔樹時,插入的不是 DocumentFragment 自身,而是它的全部子孫節點。這使得 DocumentFragment 成了有用的佔位符,暫時存放那些一次插入文檔的節點
offsetLeft 距離左邊的距離, 相對規則同 css 的定位
offsetTop 距離上邊的距離, 相對規則同 css 的定位
offsetParent 獲得第必定位的祖先元素
clientLeft 沒卵用 就是邊框寬
clientTop 沒卵用 就是邊框寬
getBoundingClientRect() 返回對象 包含位置信息 大小信息
getBoundingClientRect()
getClientRects()
offsetWidth
offsetHeight
clientWidth
clientHeight
scrollWidth
scrollHeight
document.elementFromPoint()
scrollLeft
scrollTop
每一個載入瀏覽器的 HTML 文檔都會成爲Document 對象。Document 對象使咱們能夠從腳本中對 HTML頁面中全部元素進行訪問
URL 獲取當前頁面的url 只讀
domain 獲取域名
referrer 獲取上一個頁面的地址 只讀
title
location
lastModified
cookie
write()
writeln()
屬性
elements 全部表單控件組成的集合
方法
submit() 讓表單提交
reset() 讓表單重置
方法
focus() 得到焦點
blur() 使失去焦點
click() 使按鈕比被單擊
方法
focus() 得到焦點
blur() 失去焦點
click() 被單擊
方法
focus() 獲取焦點
blur() 失去焦點
select() 所有被選中
屬性
options
selectedIndex
length 選項的數量
方法
add() 添加選項
remove() 移出選項, 參數是option的索引
focus() 獲取焦點
blur() 失去焦點
屬性
cells 返回包含表格中全部單元格的一個數組。
rows 返回包含表格中全部行的一個數組。
方法
createCaption() 爲表格建立一個 caption 元素。
deleteCaption() 從表格刪除 caption 元素以及其內容。
createTHead() 在表格中建立一個空的 tHead 元素。
deleteTHead() 從表格刪除 tHead 元素及其內容。
createTFoot() 在表格中建立一個空的 tFoot 元素。
deleteTFoot() 從表格刪除 tFoot 元素及其內容。
insertRow() 在表格中插入一個新行。
deleteRow() 從表格刪除一行。
屬性
cells 返回包含行中全部單元格的一個數組。
rowIndex 返回該行在表中的位置。
方法
deleteCell() 刪除行中的指定的單元格。 insertCell() 在一行中的指定位置插入一個空的 <td> 元素。
屬性
cellIndex 返回單元格在某行的單元格集合中的位置。