摘要:主要介紹不常用的類型這里介紹我們的其他類型包括以下幾個類型類型類型類型類型類型類型類型文本節(jié)點由類型表示特征值為為為節(jié)點包含的文本是一個不支持沒有子節(jié)點我們可以通過訪問節(jié)點包含的文本方法將添加到節(jié)點末尾從指定位置開始刪除個字符從指定
主要介紹不常用的DOM類型
這里介紹我們的其他類型,包括以下幾個類型:
Text類型
Comment類型
CDATASection類型
DocumentType類型
DocumentFragment類型
Attr類型
Text類型文本節(jié)點由Text類型表示
特征nodeType值為3
nodeName為"#text"
nodeValue為節(jié)點包含的文本
parentNode是一個Element
不支持(沒有)子節(jié)點
我們可以通過nodeValue/data訪問Text節(jié)點包含的文本.
方法appendData(text)將text添加到節(jié)點末尾
deleteData(offset,count)從offset指定位置開始刪除count個字符
insertData(offset,text)從offset指定位置插入text
replaceData(offset,count,text)用text替換從offset指定的位置開始到offset+count為止處的文本
splitText(offset)從offset指定的位置將當(dāng)前文本節(jié)點分成兩個文本節(jié)點
substringData(offset,count)提取從offset指定位置開始到offset+count為止的字符串
除此之外,哈有l(wèi)ength屬性,保存著節(jié)點中字符的數(shù)目.且值與nodeValue.length和data.length相同.
修改時字符串會經(jīng)過HTML/XML編碼,所以對于小于號,大于號和引號我們要進行轉(zhuǎn)義
創(chuàng)建文本節(jié)點document.createTextNode()接受一個參數(shù),就是插入節(jié)點的文本,然后將會根據(jù)HTML/XML的格式進行編碼.并且在創(chuàng)建時也會為其設(shè)置ownerDocument屬性.當(dāng)然我們要將它添加進文檔樹中還是需要之前介紹過的操作的.
規(guī)范化文本節(jié)點normalize()這個方法,在一個包含多個文本節(jié)點的父元素上調(diào)用該方法,會將所有文本節(jié)點合并成一個節(jié)點.
注意!(IE6):該方法會導(dǎo)致崩潰
Text類型提供了splitText方法就是和規(guī)范化文本節(jié)點相反的一個方法,這個方法我們在之前有介紹到,這是從文本節(jié)點提取數(shù)據(jù)的常用DOM解析技術(shù)
Comment類型這就是注釋了,在DOM中通過Comment類型來表示我們的注釋.
特征nodeType值為8
nodeName值為"#comment"
nodeValue值為注釋的內(nèi)容
parentNode可能是Document或Element
不支持(沒有)子節(jié)點
值得注意的是Comment類型和Text類型繼承自相同的基類,所有在方法上除了splitText()外所有字符串操作方法都與Text類型相似.
創(chuàng)建document.createComment(text)這個也與文本節(jié)點類似,而我們也很少訪問這類節(jié)點,所以這里不再贅述
CDATASection類型只針對XML文檔,表示的是CDATA區(qū)域,這與Comment類似,并且該類型繼承自Text類型,因此除了splitText()方法之外所有字符串操作方法都相似
特征nodeType值為4
nodeName值為"#cdata-section"
nodeValue為CDATA區(qū)域中的內(nèi)容
parentNode可能是Document或Element
不支持(沒有)子節(jié)點
創(chuàng)建document.createCDataSection()可以創(chuàng)建CDATA區(qū)域,傳入?yún)?shù)為傳入節(jié)點的內(nèi)容.
DocumentType類型這在Web瀏覽器中并不常用
特征nodeType值為10
nodeName值為doctype名稱
nodeValue值為null
parentNode是Document
不支持(沒有)子節(jié)點
在DOM 1級中,DocumentType對象不能動態(tài)創(chuàng)建,只能通過解析文檔代碼方式創(chuàng)建.支持它的瀏覽器會把DocumentType對象保存在document.doctype中.并且描述了DocumentType對象的3個屬性:name,entities和notations.
name 表示文檔類型名稱
entities 即文檔類型描述的尸體的NamedNodeMap對象
notations 是由文檔類型描述的符號的NamedNodeMap對象
通常來說只有name是有用的,它保存了
在所有節(jié)點類型中,只有該類型在文檔中沒有對應(yīng)的標記.DOM規(guī)定文檔片段是一種"輕量級"的文檔,可以包含和控制節(jié)點,但不會和完整的文檔那樣占用額外資源.
特征nodeType 值為11
nodeName 值為"#document-fragment"
nodeValue 為null
parentNode為null
子節(jié)點可以是Element,ProcessingInstruction,Comment,Text,CDATASection,EntityReference
它可以說是一個文檔節(jié)點的倉庫
創(chuàng)建document.createDocumentFragment()方法創(chuàng)建文檔片段,它繼承了Node所有的方法,我們可以通過之前所說的方法添加節(jié)點到文檔片段中,再通過方法將文檔片段添加到文檔中,但是這過程中發(fā)生的并不是將文檔片段添加到文檔樹.
文檔片段本身永遠不會成為文檔樹的一部分,實際上指揮將其所有子節(jié)點添加(轉(zhuǎn)移)到相應(yīng)位置.
元素特性在DOM中以Attr類型表示,在所有瀏覽器中我們都可以訪問Attr類型的構(gòu)造函數(shù)和原型.可以說特性就是存在于元素的attributes屬性中的節(jié)點.
特征nodeType值為2
nodeName為特性名
nodeValue為特性值
parentNode值為null
HTML中不支持(沒有)子節(jié)點
XML中子節(jié)點可以是Text或EntityReference
盡管我們稱它為節(jié)點,但是特性并不被認為是DOM文檔樹的一部分.
name
value
specified
這些在我們之前的章節(jié)也有所介紹,不再贅述
document.createAttribute(name)可以創(chuàng)建相應(yīng)的特性,傳入?yún)?shù)為特性名
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/91031.html
摘要:類型除了該死的其他所有瀏覽器都可以訪問到類型而中所有節(jié)點類型都繼承自類型因此所有節(jié)點類型都共享著相同的基本屬性和方法每個節(jié)點都有一個屬性可以表明節(jié)點的類型我們來看看有哪些類型吧和屬性則完全取決于對于元素節(jié)點保存的始終為標簽名而保存的值始終為 Node類型 除了IE(該死的IE),其他所有瀏覽器都可以訪問到Node類型,而JS中所有節(jié)點類型都繼承自Node類型,因此所有節(jié)點類型都共享著相...
摘要:簡介簡史誕生于年,當(dāng)時主要負責(zé)表單的輸入驗證。實現(xiàn)一個完整的由三部分組成核心文檔對象模型瀏覽器對象模型就是對實現(xiàn)該標準規(guī)定的各個方面內(nèi)容的語言的描述。把整個頁面映射為一個多層節(jié)點結(jié)構(gòu)。由萬維網(wǎng)聯(lián)盟規(guī)劃。主要目標是映射文檔的結(jié)構(gòu)。 JavaScript簡介 JavaScript簡史 JavaScript誕生于1995年,當(dāng)時主要負責(zé)表單的輸入驗證。 如果沒有表單驗證的功能,填入信息之...
摘要:為屬性賦值匿名函數(shù)事件作用域使用級方法指定的事件處理程序被認為是元素的方法。最后這個布爾值參數(shù)如果是,表示在捕獲階段調(diào)用事件處理程序如果是,表示在冒泡階段調(diào)用事件處理程序。 事件捕獲和事件冒泡 DOM2級事件規(guī)定的事件流包括三個階段:事件捕獲、處于目標階段和事件冒泡。首先發(fā)生的是事件捕獲,從外部節(jié)點到內(nèi)部節(jié)點依次遍歷,為截獲事件提供了機會。然后是實際的目標接收到事件。最后一個階段是冒泡...
摘要:為屬性賦值匿名函數(shù)事件作用域使用級方法指定的事件處理程序被認為是元素的方法。最后這個布爾值參數(shù)如果是,表示在捕獲階段調(diào)用事件處理程序如果是,表示在冒泡階段調(diào)用事件處理程序。 事件捕獲和事件冒泡 DOM2級事件規(guī)定的事件流包括三個階段:事件捕獲、處于目標階段和事件冒泡。首先發(fā)生的是事件捕獲,從外部節(jié)點到內(nèi)部節(jié)點依次遍歷,為截獲事件提供了機會。然后是實際的目標接收到事件。最后一個階段是冒泡...
摘要:在基于使用命名空間的文檔求值時,需要使用對象。第四個參數(shù)的取值類型是下列常量之一,返回與表達式匹配的數(shù)據(jù)類型。,返回字符串值。這是最常用的結(jié)果類型。集合中節(jié)點的次序與它們在文檔中的次序一致。 JavaScript與XML 瀏覽器對XML DOM的支持 DOM2級核心 在通過JavaScript處理XML時,通常只使用參數(shù)root,因為這個參數(shù)指定的是XML DOM文檔元素的標簽名 v...
閱讀 3059·2023-04-26 03:01
閱讀 3547·2023-04-25 19:54
閱讀 1600·2021-11-24 09:39
閱讀 1382·2021-11-19 09:40
閱讀 4261·2021-10-14 09:43
閱讀 2098·2019-08-30 15:56
閱讀 1504·2019-08-30 13:52
閱讀 1669·2019-08-29 13:05