用dir展開乙個元素 上面的都是屬性 方法都在__proto__中
1.dom節點 (document object model 文件物件模型)
document>documentelement>body>tagname
clidnodes (獲取子節點列表的集合) (白話:孩子節點的總數)
firstchild (第乙個節點)
2.我們常用的節點型別:
1.元素節點(標籤)
2.屬性節點(標籤裡面的屬性)
3.文字節點(標籤裡面的內容)
案例:
hello world
(div代表的是元素節點 id代表的是屬性節點 hello world代表的文字節點)
元素中有乙個nodetype 的屬性來判斷節點 返回值為數字
1代表元素節點
2代表屬性節點
3代表文字節點
4.節點的獲取(重中之重)
獲取元素節點的很多方法
document.getelementbyid()
document.getelementsbyclassname()
document.getelementsbytagname()
document.queryselector()
document.queryselectorall()
屬性節點獲取
元素.getattribute("屬性名") 獲取元素的屬性值
元素.attributes 獲取元素身上所有屬性構成的集合 如果想得到裡面的屬性值 元素.attributes[1].value
元素.setattribute("屬性名","屬性值") 給元素設定屬性和屬性值
元素.setattribute("id","aa")
元素.removesetattribute("屬性") 刪除元素屬性
文字節點
沒有獲取的方法(無意義)
標準瀏覽器(ie8以上的高版本瀏覽器) 非標準瀏覽器(ie8以下的低版本瀏覽器)
標準瀏覽器會把文字節點也當成他的子節點
5.相容性:
獲取元素子節點的
元素.childnodes 這個屬性有相容性,標準瀏覽器會獲取到文字節點,而低版本不會, 所以建議使用children這個屬性 (這個屬性:唯讀)
元素.children
獲取單個子節點;
獲取第乙個子節點
標準瀏覽器下:元素.firstelementchild;
非標準瀏覽器下:元素.firstchild
相容性寫法:元素.firstelementchild||元素.firstchild
獲取最後乙個子節點:元素.lastelementchild
標準瀏覽器下:元素.lastelementchild
非標準瀏覽器下:元素.lastchild
相容性寫法:元素.lastelementchild||元素.lastchild
標準瀏覽器下:元素.nextelementsibling
非標準瀏覽器下:元素.nextsibling
相容性寫法:元素.nextelementsibling||元素.nextsibling
標準瀏覽器下:元素.previouselementsibling
非標準瀏覽器下:元素.previoussibling
相容性寫法:元素.previouselementsibling||元素.previoussibling
6.獲取父節點:parentnode
元素.parentnode (不會涉及到相容性問題,放心使用)
7.區分offsetparent和parentnode的區別?
案例:offsetparent是跟定位有關的 所以他的父級是ha parent node的父級就是他的上一級he
二。動態建立節點: 在空的div中新增內容
新增內容的幾種方法;
1. 字串拼接 (新增事件不起作用)
2.動態建立 (消耗效能最大)
3.模板建立 (字串拼接的封裝版)
4.文件碎片 (最好用的 方法一和方法二的結合)
建立節點
1.生成節點的方法:document.createlement("div")
3.在指定的位置中插入新的節點
父元素.insertbefore(新節點,誰的前面) 將新的節點插入到指定元素的前面
4.刪除元素節點
父級.removechild(要刪除的節點)
元素節點的獲取
1.dom節點 document object model 文件物件模型 document documentelement body tagname clidnodes 獲取子節點列表的集合 白話 孩子節點的總數 firstchild 第乙個節點 2.我們常用的節點型別 1.元素節點 標籤 2.屬性...
獲取元素,獲取節點詳解
描述家庭族譜圖,只要我們獲得乙個元素,就可以通過很多的屬性或者方法找到頁面中的任何乙個元素 一 獲取元素的常用的8個方法 1 document.getelementbyid 1 id重複了,只獲取第乙個 2.ie6 7下不區分id大小寫 3.ie6 7下把表單元素name當作id使用 4.內嵌式引入...
獲取元素的子節點
原生的js獲取id為test的元素下的子元素。可以用 var a docuemnt.getelementbyid test getelementsbytagname div 這樣是沒有問題的 此時a.length 2 但是如果我們換另一種方法 var b document.getelementbyi...