亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 關(guān)于DOM中Nodelist的問題

瀏覽:80日期:2023-03-06 17:39:41

問題描述

問題:p的Nodelist的[2][4]所示的文本節(jié)點是什么?屬于誰?

<p>this is p<h1 id='h1'>this is H1</h1><h2>this is H2</h2> </p> <script type='text/javascript'>var p = document.getElementsByTagName('p')[0];var child_nodes = p.childNodes;var h1 = document.getElementsByTagName('h1')[0];for (var i=0;i<child_nodes.length;i++) { // 遍歷這個Nodelist,并寫入document文檔中document.write(child_nodes[i]+'<br />')}獲得p后,對p調(diào)用childNodes返回Nodelist集合并遍歷它,得出圖中的幾個對象,[0]是p自身文本節(jié)點,[1],[3]是h1,h2元素節(jié)點,那其中的[2][4]的文本節(jié)點是什么?我當(dāng)時以為是不是h1,h2的文本節(jié)點,畢竟childNodes是返回子節(jié)點的集合,但是代碼推翻了我的想法。問題:p的Nodelist的[2][4]所示的文本節(jié)點是什么?屬于誰?

javascript - 關(guān)于DOM中Nodelist的問題

alert(child_nodes[0]===p.childNodes[0]) // true p自身文本節(jié)點console.log(child_nodes[1]===h1)// true 子節(jié)點h1alert(child_nodes[1].childNodes===h1.childNodes)// true h1的childNodes返回的集合相同,符合遍歷出的元素alert(child_nodes[2].nodeValue===h1.childNodes[0].nodeValue) // false alert(child_nodes[2]===h1.childNodes[0])// false

想想也覺得不會是h1,h2的Nodelist,對p進(jìn)行childNodes返回的Nodelist集合包括h1,h2,而h1,h2的文本節(jié)點是在自己的Nodelist里。

問題解答

回答1:

這兩個文本節(jié)點就是</h1>、</h2>后面的空白符(換行符)。其實this is p后面也有一個,但這個空白符和字符串合在一起算一個文本節(jié)點。既然是p.childNodes搞出來的,肯定都屬于p了。

如果是IE來解析這段代碼,p.childNodes只有三個,分別是this is p、<h1 id='h1'>this is H1</h1>、<h2>this is H2</h2>;如果是其他瀏覽器,則會有5個子元素,換行或者元素之間有空格都會產(chǎn)生一個文本節(jié)點,也即是你所看到的情況。

你可以把換行符都刪掉,寫成這樣,<p>this is p<h1 id='h1'>this is H1</h1><h2>this is H2</h2></p>,你就會看到只剩三個子元素了。

以上這些在《JS高程3》里都有描述,你去翻一翻看看,P269

回答2:

elements 中的空白字元也會被視爲(wèi)一文本節(jié)點, 所以

[0] = this is p (加上到h1前的空白)[1] = h1[2] = h1 和 h2 之間的空白[3] = h2[4] = h2 完結(jié)和 p 完結(jié)之間的空白

回答3:

分別是h1和h2后面的換行符號,是屬于p的文本節(jié)點。使用childNodes是會產(chǎn)生這樣的問題的,因為這個方法也會將他們當(dāng)作子元素。最好用children,可以避免這個問題。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 色综合久久98天天综合 | 国产++欧洲韩国野花视频 | 久热精品男人的天堂在线视频 | 亚洲精品入口一区二区在线观看 | 毛片1 | 日本欧美做爰全免费的视频 | 亚洲欧美精品日韩欧美 | 国产香蕉在线精彩视频 | 欧美a级黄| 国产精品久久亚洲一区二区 | 精品综合久久久久久8888 | 韩国19禁青草福利视频在线 | 亚洲午夜精品aaa级久久久久 | 尤物视频免费在线观看 | 久久厕所精品国产精品亚洲 | 黄色的视频在线观看 | 日韩精品一区二区三区在线观看 | 手机看片自拍自自拍日韩免费 | 亚洲欧美高清 | 欧美人体一区二区三区 | 色婷婷精品免费视频 | 91久久精品 | 99久久免费精品视频 | 欧洲美女高清一级毛片 | 人妖三人交69欧美 | 国产亚洲美女精品久久久久 | 97se狠狠狠狠狠亚洲综合网 | 黄色大片一级片 | 美国一级特黄aa大片 | 亚洲经典激情春色另类 | 欧美色视频日本片高清在线观看 | 欧美一级毛片免费观看软件 | 亚洲精品色播一区二区 | 久久久久国产精品 | 看一级黄色毛片 | 精品视频在线观看视频免费视频 | 日韩女同一区二区三区 | 欧美特级黄色录像 | 拍拍视频免费观看网站在线观看 | 色综合色狠狠天天久久婷婷基地 | www.小明看看 |