JS DOM篇(一)

PianistK發表於2020-12-15

Node型別

DOM1級定義了一個Node介面,節點型別定義了12個常數值常量來表示(用nodeType區分)
開發人員最常用的就是元素節點和文字節點

  1. nodeName 和 nodeValue屬性
if(someNode.nodeType == 1){
	value = someNode.nodeName  //nodeName是元素的標籤名
}
  1. 節點關係 childNodes parentNode
    每個節點都有childNodes屬性,儲存著一個NodeList物件(是個偽陣列)
var firstChild = someNode.childNodes[0]
var secondChild = someNode.childNodes.items(1) //可以通過items()方法獲取
var count = someNode.childNodes.length  

var firstChild = someNode.firstChild  //快速找到第一個
var lastChild = someNode.lastChild  //快速找到最後一個
console.log(firstChild == secondChild.previousSibling)
console.log(secondChild == firstChild.nextSibling)

關係圖如下
假裝有圖

  1. 操作節點
//appendChild()
someNode.appendChild(newNode)
//insertBefore(newNode,xxxNode)
someNode.insertBefore(newNode,xxxNode)
//removeChild()
someNode.removeChild(xxxNode)
//replaceChild()
someNode.replaceChild(newNode,oldNode)

Document 型別

  1. 文件資訊
屬性說明
document.domain取得域名
document.URL取得完整URL(可設定)
document.referrer取得來源頁面的URL
  1. 查詢元素
document.getElementById()  //根據id
document.getElementByTagName() //根據標籤名
document.getElementByName() //根據屬性名
document.images //頁面所有image
document.forms //頁面所有form
document.anchors //頁面所有帶name特性的a標籤

Element 型別

  1. 標籤彙總(省略)
  2. 操作屬性方法
  3. 建立元素

相關文章