DOM節點操作、事件物件與BOM
------------恢復內容開始------------
節點型別
通過noteType屬性可以獲取節點的型別
document的節點型別---9
標籤的節點型別---1
屬性的節點型別---2,getAttributeNode("屬性"):獲取元素的屬性節點
文字的節點型別---3,元素的第一個子節點就是文字節點
節點名稱
通過nodeName可以獲取元素的節點名稱。
document的節點名稱---#document
標籤的節點名稱---大寫的標籤名
屬性的節點名稱---屬性名
文字的節點名稱---#text
節點值
通過nodeValue可以獲取元素的節點的值。
document的節點值---null
標籤的節點值---null
屬性的節點值---屬性值
文字的節點值---文字的內容
節點之間的關係
父子關係(巢狀關係)
並列關係(兄弟關係)
父節點--parentNode
父元素節點--parentElement
子節點--childNodes:標籤節點、文字節點、註釋節點得到的是偽陣列
子元素節點--children:標籤節點
第一個子節點--firstChild:文字
第一個子元素節點--firstElementChild:第一個標籤
最後一個子節點--lastChild:文字
最後一個子元素節點--lastElementChild:最後一個標籤
上一個子節點--previousSibling:文字
上一個子元素節點--previousElementSibling:上一個標籤
下一個子節點--nextSibling:文字
下一個子元素節點--nextElementSibling:下一個標籤
insertBefore(插入內容,在誰之前插入)
方法可在已有的子節點前插入一個新的子節點。
建立元素的三種方式
1.document.write() 缺點;只能在body中新增元素
2.innerHTML
缺點:在同級下只能新增一種元素,多個會覆蓋(但是可以解決,
如document.getElementById("box").innerText += " <h2>我是標題333</h2>")
3.document.createElement()
常和 父元素.appendChild(子元素)給父元素末尾新增子元素
BOM的概念
Window物件是BOM的頂層物件
對話方塊
alert()
prompt()
confirm()
載入事件
onload事件(非同步操作)事件會在頁面或影象載入完成後立即發生。
onload通常用於<body>元素,在頁面完全載入後(包括圖片、css檔案等等。)執行指令碼程式碼。
Location物件
Navigator物件
History物件