JS中的DOM知識概覽

2021-09-16 20:11:47 字數 1303 閱讀 1165

除ie外所有瀏覽器都可以訪問這個型別(因為ie中的dom物件都是以com物件的形式實現的),而且js中的所有節點型別都繼承自node型別。

insertbefore()

replacechild()

removechild()

拷貝:clonenode()

當引數為true時,執行深拷貝,會將該節點的子節點也拷貝。但是這個函式不會複製新增到節點中的js屬性,例如時間處理程式,這個只複製特性、子節點(指定true時)。(ie瀏覽器中另說)
document物件是htmldocument型別的乙個例項,htmldocument繼承自document。並且,document物件是window物件的乙個屬性。

document.implementation.hasfeature()

一般不要相信這個的檢測結果,因為可以自行修改結果。
document.write()

document.writeln()

如果在文件載入完畢後寫入會重寫整個頁面。
document.open()

document.close()

如果是在頁面載入期間寫入,則不需要用到這兩個方法。
所有的元素都是通過htmlelementle型別或其自型別表示的,htmlelement型別繼承自element型別。

可通過nodevalue或data屬性訪問text節點中包含的文字。

操作文字節點中的文字:

deletedata()

replacedata()

insertdata()

splittext()

當兩個文字節點相鄰時,可通過normalize()將其變成乙個文字節點。normalize()是從node型別繼承的函式
分割文字節點

textnode.splittext(5) 返回乙個新文字節點,且該節點與原節點的parentnode相同

在文件中沒有標記。

當需要新增多個子節點時,如果乙個乙個新增,那麼將會導致瀏覽器的反覆渲染,這時可以將這些子節點新增到文件片段中,然後再新增到文件中。

7.1 動態新增指令碼

7.2 動態新增樣式

7.3 操作**

7.4 nodelist

最好將length的值儲存在乙個變數中,因為length的值是動態的。

訪問nodelist相當於一次基於文件的查詢,所以要少訪問nodelist,或將其存在快取中。

js中的dom查詢小知識點

元素.getelementsbytagname 通過標籤名查詢當前元素的指定後代元素,返回陣列 元素.childnodes 獲取當前元素的所有子節點 會獲取到空白的文字子節點 元素.children 獲取當前元素的所有子元素 元素.firstchild 獲取當前元素的第乙個子節點 元素.lastch...

JS中的DOM事件

1.html事件處理程式 html事件缺點 html和js 緊密的耦合在一起,js 個html都需要進行修改。2.dom0級事件處理程式 較傳統的方式 把乙個函式賦值給乙個事件的處理程式屬性用的比較多的方法,簡單,跨瀏覽器的優勢 沒有html事件處理程式的缺點。3.dom2級事件處理程式 dom2級...

js中Dom的學習

dom document object model 即文件物件模型,意思是html文件中每乙個元素都是乙個物件節點。節點型別以及對應值如下 需要注意的是 getelementbyid獲得到的是單個節點,而其他方法獲得到的是乙個集合 哪怕最終取到的只有乙個元素 從語義上也能看出來。簡單演示 獲取id為...