2013-03-23 29 views
1

HTML:DOM:div有一個文本對象的子節點通過defult?

<div id="Box" style="height: 100px; width= 100px; background-color: red;"> 
<img src="someImg.jpg"></img> 
</div> 

Thatsit。我在HTML文件中有一個簡單的div。現在,在javascript文件我寫

window.onload = initAll; 

function initAll(){ 
document.getElementById("Box").onclick = childNodes; 
} 

function childNodes(){ 

for(var n = 0 ; n < this.childNodes.length; n++){ 
alert(this.childNodes.item(n)); 
} 

現在,在這裏我不應該只看到一個提示框(因爲div元素只有一個孩子就是一個圖像)。相反,我得到3個警報框。第一次和第三次提醒「對象文本」,第二次提醒「Obkect HTMLImageElement」。爲什麼這樣?

+0

這就是'childNodes'和'children'的區別。 – dfsq 2013-03-23 14:03:24

+0

我對這一切都很陌生。從未注意到其中的差異感謝你的回答。 – 2013-03-23 14:05:45

+2

'childNodes'包含文本節點和註釋節點以及元素節點。 'children'只包含元素節點。 http://jsfiddle.net/Q5Wtg/ – dfsq 2013-03-23 14:10:48

回答

1

您的img標記周圍有空白空間,標記爲文本節點。

相關問題