還有一點(diǎn),如果要動態(tài)寫入腳本 例如 <script>xxx</script>這樣的 ,那么要注意把分開來拼裝下,否則會被誤以為是腳本結(jié)束的標(biāo)志,導(dǎo)致這個結(jié)束符匹配到上面一個開始符 ??梢赃@樣寫”<scr” +="" “ipt="">”;</scr”>
四、Element類型
接下來講講最重要也是最常見的一個類型,Element類型 。
我們?nèi)粘K僮鞯亩际荅lement類型(實(shí)質(zhì)是HTMLElement,這里為了方便理解,就簡單這么說),比如
document.getElementById("test") 返回的就是Element類型 。我們?nèi)粘Kf的“DOM對象”,通常也就是指Element類型的對象 。
然后說說這個類型的常見屬性:
首先最開始說的Node類型上的那些屬性方法它都有,這個就不再重復(fù)了,主要說說它自己獨(dú)有的 。
首先是tagName,這個和繼承自Node類型的nodeName一樣 。都是返回標(biāo)簽名,通常是大寫,結(jié)果取決于瀏覽器 。所以在做比較
的時候最好是調(diào)用下類似toLowerCase()這種方法再做比較 。
說說上面提到過的HTMLElement類型
HTMLElement類型繼承自Element類型,也是HTML元素的實(shí)際類型,我們在瀏覽器里用的元素都是這個類型 。
這個類型都具有一些標(biāo)準(zhǔn)屬性,比如:
id 元素的唯一標(biāo)識
title 通常是鼠標(biāo)移上去時候會顯示的信息
className 類名
等等,這幾個屬性是可讀寫的,也就是說你改變他們會得到相應(yīng)的效果 。
除了屬性外,還有幾個重要的方法
首先說說操作節(jié)點(diǎn)屬性的方法
getAttribute 、setAttribute 、removeAttribute這3個方法 。
這些是操作屬性最常用的方法了,怎么用就不說了,很簡單,顧名思義 。
還有一個attributes屬性,保存了元素的全部屬性 。
這里停下來,出個問題,ele.className 和 ele.getAttribute(“class”)返回的結(jié)果是不是同一個東西?
解答這個問題,我要說一個重要知識點(diǎn),一個元素的屬性結(jié)構(gòu)是這么來的,比如一個inpnt元素
<input checked="checked"> 那么這個元素的屬性被包含在 input.attributes里面,比如你在html元素上看到的class、id或者你自己定義的data-test這種屬性 。
然后 getAttribute 、setAttribute 、removeAttribute這3個方法可以認(rèn)為是快捷的取attributes集合的方法 。而**直接input.id或者input.className都是直接掛在input下的屬性,和attributes是同級的 。**所以返回的東西也許看過去一樣,實(shí)際是不一樣的,不信你可以試試input.checked這input.getAttribute(“checked”)試試 。
總得來說,這3個方法通常用了處理自定義的屬性,而不是id、class等這種“公認(rèn)特性” 。
接下來說說創(chuàng)建元素
document.createElement()可以創(chuàng)建一個元素,比如:
document.createElement("div"); 一般之后可以為元素設(shè)置屬性,兩種方法,一種是直接node.property還可以node.setAttribute(“propertyName”,”value”) 。等
但是做完這些之后,這個元素還是沒有在頁面中,所以你還得通過最上面講的類似appendChild這些方法把元素添加到頁面里面 。
在IE中,還可以直接穿整個HTML字符串進(jìn)去,來創(chuàng)建元素,比如
document.createElement("test"); 最后,元素節(jié)點(diǎn)也支持HTMLDocument類型的那些查找方法,比如getElementsByTagName 。不過它只會找自己后代的節(jié)點(diǎn) 。所以可以這么寫代碼
document.getElementById("test").getElementsByTagName("div"); // 找到id為test元素下的所有div節(jié)點(diǎn) 五、Text類型
這個類型很特殊,也是第三常見類型(第一第二分別就是Document和Element) 。
這個節(jié)點(diǎn)簡單來說就是一段字符串 。
有個很重要的特征就是,它沒有子元素(不過這個仔細(xì)想想也知道= =)
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 蜂王漿是什么
- 十種方法增強(qiáng)記憶力是什么呢
- 絕對值最小的有理數(shù) 絕對值最小的有理數(shù)是什么數(shù)
- 一蹴而就的意思是什么 一蹴而就的意思是什么啊
- 連長是什么軍銜 一個連的編制是多少人
- 儒家思想的核心主張是什么 儒家及其代表性人物
- smt是什么意思和流水線哪個輕松 smt貼片元器件是什么意思
- 大雁往南飛是什么季節(jié)
- 饃饃上點(diǎn)的紅色是什么
- 生源地是什么意思?生源地一般寫到縣還是市
