JavaScript學習8:DOM進階
DOM自身存在很多型別,我們在上篇部落格中提到了大部分的型別,比如Element型別:表示的是元素節點,比如Text型別:表示的是文字節點。DOM也提供了一些擴充套件功能。
一.DOM型別
上篇部落格我們瞭解了DOM的節點以及怎樣操作和查詢節點,而本身這些不同的節點,又有著不同的型別
我們隨便來看兩個型別:Document型別和Element型別
Document型別表示文件,或文件的根節點,而這個節點時隱藏的,沒有具體的元素標籤。
Element型別用於表現HTML中的元素節點。在之前的文章裡,我們 已經可以對元素節點進行查詢、建立等操作,元素節點的nodeType為1,nodeName為元素的標籤名。
元素節點物件在非IE瀏覽器可以返回它具體元素節點的物件型別。
二.DOM擴充套件
1 呈現模式
從IE6開始區分標準模式和混雜模式(怪異模式),主要是看文件的宣告。IE為Document物件新增了一個名為compatMode屬性,這個屬性可以識別IE瀏覽器的文件處於什麼模式。如果是標準模式,則返回CSS1Compat,如果是混雜模式則返回BackCompat。
2 滾動
DOM提供了一些滾動頁面的方法,如下:
Document.getElementById(‘box’).scrollIntoView();
3 children屬性
由於子節點空白問題,IE和其他瀏覽器解釋不一樣。雖然可以過濾掉,但是如果得到有效子節點,可以使用children屬性,支援的瀏覽器為:IE5+,Firefox3.5+等等。
4 contains()方法
判斷一個節點是不是另一個節點的後代,我們可以使用contains()方法。這個方法是IE率先使用的,開發人員無須遍歷即可獲取此資訊。
三.DOM操作內容
1 innerText屬性
除了Firefox之外,其他瀏覽器均支援這個方法。但是Firefox的DOM3級提供了另一個類似的屬性:textContent,做上相容即可通用。
2innerHTML屬性
這個屬性我們之前介紹過,不拒絕HTML。雖然可以插入HTML,但是還是有一些限制的,也就是所謂的作用域元素,離開這個作用域就無效了。
3outerText
outerText在取值的時候和innerText一樣,火狐同樣不支援,而賦值方法相當危險,他不單替換了文字內容,還將元素直接抹去。
4outerHTML
這個使用和innerHTML一樣,同樣在賦值的時候要謹慎。
相關文章
- Javascript DOM學習總結JavaScript
- JavaScript學習7:DOM基礎JavaScript
- Node進階學習
- 【Javascript】DOM程式設計學習總結篇JavaScript程式設計
- JavaScript學習9:DOM操作表格及樣式JavaScript
- Java進階容器學習Java
- JavaScript入門學習之旅(二)——JavaScript DOM程式設計藝術學習筆記(上)JavaScript程式設計筆記
- JavaScript進階JavaScript
- JavaScript學習總結(三)BOM和DOM詳解JavaScript
- JavaScript學習筆記 - 進階篇(3)- 流程控制語句JavaScript筆記
- JavaScript 複習之DOM 概述JavaScript
- Go 進階學習筆記Go筆記
- Java學習路線·進階Java
- c++學習進階之路
- Swift進階學習筆記Swift筆記
- Git進階學習筆記Git筆記
- create table進階學習(一)
- create table進階學習(三)
- create table進階學習(四)
- 輕鬆學習 JavaScript(8):JavaScript 中的類JavaScript
- JavaScript DOM 程式設計藝術 學習筆記01JavaScript程式設計筆記
- JavaScript DOM 程式設計藝術 學習筆記 02JavaScript程式設計筆記
- 讀懂深度學習,走進“深度學習+”階段深度學習
- linux進階命令學習一Linux
- Rust build.rs進階學習RustUI
- Python學習路線·進階Python
- 學習python的進階之路Python
- linux書籍進階學習Linux
- Xcode快捷鍵進階學習XCode
- create table進階學習系列(八)
- create table進階學習系列(五)
- create table進階學習系列(七)
- create table進階學習系列(九)
- U-Net學習與進階
- SCO UNIX學習寶典 高階進階(轉)
- DOM學習總結
- 《JavaScript高階程式設計》筆記:DOM(十)JavaScript程式設計筆記
- 大三寒假學習進度(8)