DOM

解析過程:

HTML加載完畢绞愚,渲染引擎會(huì)在內(nèi)存中把HTML文檔叙甸,生成一個(gè)DOM樹,getElementById是獲取內(nèi)中DOM上的元素節(jié)點(diǎn)爽醋。然后操作的時(shí)候修改的是該元素的屬性蚁署。結(jié)構(gòu)如下圖:

?常用的DOM方法:

操作節(jié)點(diǎn),必須首先找到該元素蚂四。有三種方法來做這件事:

通過id?找到HTML?元素

document.getElementById("demo");

通過標(biāo)簽名找到HTML?元素

document.getElementsByTagName("div");

通過類名找到HTML?元素

document.getElementsByClassName("a");

DOM的節(jié)點(diǎn)并不是孤立的光戈,因此可以通過DOM節(jié)點(diǎn)之間的相對(duì)關(guān)系對(duì)它們進(jìn)行訪問。如父節(jié)點(diǎn)遂赠,子節(jié)點(diǎn)久妆,兄弟節(jié)點(diǎn)


設(shè)置屬性:

//兩種方式不能交換使用,賦值和獲取值必須使用用一種方法跷睦。

? ? var div = document.getElementById("box");

? ? //元素節(jié)點(diǎn).屬性(元素節(jié)點(diǎn)[屬性]):綁定的屬性值不會(huì)出現(xiàn)在標(biāo)簽上筷弦。

? ? div.aaaa = "1111";

? ? console.log(div.aaaa);

? ? //get/set/removeAttribut: 綁定的屬性值會(huì)出現(xiàn)在標(biāo)簽上。

? ? div.setAttribute("bbbb","2222");

? ? console.log(div.getAttribute("aaaa"));

? ? console.log(div.getAttribute("bbbb"));

打印結(jié)果:

1111

?null

?2222

其他的用法:

innerHTML: ? ?testDiv.innerHTML ?= <p>這是一段文字</p> ?比較粗放抑诸,可以把一段html內(nèi)容插入標(biāo)簽烂琴,一旦使用了它它的全部內(nèi)容就會(huì)被替換。

createElement:創(chuàng)建一個(gè)新的元素蜕乡, 語法:document.createElement(nodename),使用了這個(gè)方法但它不是dom節(jié)點(diǎn)樹的組成部分奸绷,只是文檔碎片。

appendChild: 語法parent.appendChild(child) 插入文檔樹中

createTextNode: 創(chuàng)建文本節(jié)點(diǎn)层玲,把文本節(jié)點(diǎn)追加到元素節(jié)點(diǎn)上,語法 var text ?= document.createTextNode("hello world");child appendChild(text); 這樣就能看到文本了

insertBefore(new,target)?在現(xiàn)有的元素之前插入新的元素号醉,但是很遺憾沒有插入之后的



node(nodeChild/nodetype/nodename/nodevalue)

nodeName 屬性含有某個(gè)節(jié)點(diǎn)的名稱。

*?元素節(jié)點(diǎn)的 nodeName 是標(biāo)簽名稱?

*?屬性節(jié)點(diǎn)的 nodeName 是屬性名稱?

*?文本節(jié)點(diǎn)的 nodeName 永遠(yuǎn)是 #text

*?文檔節(jié)點(diǎn)的 nodeName 永遠(yuǎn)是 #document

nodeValue

對(duì)于文本節(jié)點(diǎn)辛块,nodeValue?屬性包含文本畔派。

對(duì)于屬性節(jié)點(diǎn),nodeValue?屬性包含屬性值润绵。

nodeValue?屬性對(duì)于文檔節(jié)點(diǎn)和元素節(jié)點(diǎn)是不可用的线椰。

nodeType?屬性可返回節(jié)點(diǎn)的類型。

最重要的節(jié)點(diǎn)類型是:

元素類型 節(jié)點(diǎn)類型

元素element 1

屬性attr 2

文本text 3

注釋comments 8

文檔document 9

判斷字符串已『xx』開頭:

var str = "abcdefg";

? ? //判斷str是否以a為開頭尘盼?(給定字符串然后他的索引值為0)

? ? var num = str.indexOf("ab");

? ? //只有返回值為0憨愉,那么字符串才是以參數(shù)為開頭 ?,如果查詢不到呜魄,返回值為-1;

? ? alert(num);

zIndex

?屬性設(shè)置元素的堆疊順序莱衩。該屬性設(shè)置一個(gè)定位元素沿 z 軸的位置,z 軸定義為垂直延伸到顯示區(qū)的軸娇澎。如果為正數(shù)笨蚁,則離用戶更近,為負(fù)數(shù)則表示離用戶更遠(yuǎn)趟庄。

Default z-index is 0. Z-index -1 has lower priority.

Object.style.zIndex=auto|number


attachEvent與addEventListener區(qū)別

obj.attachEvent("on"+e,fun);//測(cè)試瀏覽器括细,發(fā)現(xiàn):firefox、chrome戚啥、IE9奋单、IE10、IE11猫十、safari览濒、opera都不兼容,IE7、IE8兼容拖云,

obj.addEventListener(e,fun,false);//測(cè)試瀏覽器贷笛,發(fā)現(xiàn):firefox、chrome宙项、IE乏苦、safari、opera都兼容尤筐,IE7汇荐、IE8不兼容,



?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末盆繁,一起剝皮案震驚了整個(gè)濱河市掀淘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌改基,老刑警劉巖繁疤,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異秕狰,居然都是意外死亡稠腊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門鸣哀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來架忌,“玉大人,你說我怎么就攤上這事我衬√痉牛” “怎么了饰恕?”我有些...
    開封第一講書人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長井仰。 經(jīng)常有香客問我埋嵌,道長,這世上最難降的妖魔是什么俱恶? 我笑而不...
    開封第一講書人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任雹嗦,我火速辦了婚禮,結(jié)果婚禮上合是,老公的妹妹穿的比我還像新娘了罪。我一直安慰自己,他們只是感情好聪全,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開白布泊藕。 她就那樣靜靜地躺著,像睡著了一般难礼。 火紅的嫁衣襯著肌膚如雪娃圆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評(píng)論 1 305
  • 那天鹤竭,我揣著相機(jī)與錄音踊餐,去河邊找鬼。 笑死臀稚,一個(gè)胖子當(dāng)著我的面吹牛吝岭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吧寺,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼窜管,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了稚机?” 一聲冷哼從身側(cè)響起幕帆,我...
    開封第一講書人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赖条,沒想到半個(gè)月后失乾,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡纬乍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年碱茁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仿贬。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡纽竣,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蜓氨,我是刑警寧澤聋袋,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站穴吹,受9級(jí)特大地震影響幽勒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜港令,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一代嗤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧缠借,春花似錦、人聲如沸宜猜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽姨拥。三九已至绅喉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間叫乌,已是汗流浹背柴罐。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留憨奸,地道東北人革屠。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像排宰,于是被迫代替她去往敵國和親似芝。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • ??DOM(文檔對(duì)象模型)是針對(duì) HTML 和 XML 文檔的一個(gè) API(應(yīng)用程序編程接口)。 ??DOM 描繪...
    霜天曉閱讀 3,649評(píng)論 0 7
  • 本章內(nèi)容 理解包含不同層次節(jié)點(diǎn)的 DOM 使用不同的節(jié)點(diǎn)類型 克服瀏覽器兼容性問題及各種陷阱 DOM 是針對(duì) HT...
    悶油瓶小張閱讀 640評(píng)論 0 1
  • ??DOM 1 級(jí)主要定義的是 HTML 和 XML 文檔的底層結(jié)構(gòu)。 ??DOM2 和 DOM3 級(jí)則在這個(gè)結(jié)構(gòu)...
    霜天曉閱讀 1,446評(píng)論 1 3
  • 之前通過深入學(xué)習(xí)DOM的相關(guān)知識(shí)在跳,看了慕課網(wǎng)DOM探索之基礎(chǔ)詳解篇這個(gè)視頻(在最近看第三遍的時(shí)候枪萄,準(zhǔn)備記錄一點(diǎn)東西...
    微醺歲月閱讀 4,482評(píng)論 2 62
  • 【作者】喬冠清 【導(dǎo)師】劉艷 袁浩 鄭鵬 【導(dǎo)圖解說】這幅導(dǎo)圖我分為三個(gè)部分,分別為古硬毕,今和題呻引,古和今寫的是古代和...
    喬丹2005閱讀 163評(píng)論 0 1