為什么寫成firstChild是無(wú)定義而lastChild就能輸出?應(yīng)該第一個(gè)無(wú)定義最后一個(gè)也是一樣的才對(duì)???
為什么寫成firstChild是無(wú)定義而lastChild就能輸出?應(yīng)該第一個(gè)無(wú)定義最后一個(gè)也是一樣的才對(duì)啊?
為什么寫成firstChild是無(wú)定義而lastChild就能輸出?應(yīng)該第一個(gè)無(wú)定義最后一個(gè)也是一樣的才對(duì)啊?
2017-01-08
我估計(jì)是瀏覽器的規(guī)則吧,相當(dāng)于你繞了一圈又指代自己,這種做法在編程里很容易報(bào)錯(cuò)的。
這個(gè)不太清楚,有大神回答沒(méi)?不過(guò)使用lastElementChild和firstElementChild就沒(méi)有這個(gè)問(wèn)題了
舉報(bào)
2017-05-18
請(qǐng)仔細(xì)看慕課的代碼,firstChild獲取的是父元素之后的空白節(jié)點(diǎn),由于無(wú)內(nèi)容,所以會(huì)輸出undefined,而最后一個(gè)子元素的結(jié)束處是</li></ul>,此處無(wú)斷開,所以lastChild就是我們要獲取的內(nèi)容,假如把最后一個(gè)</li>與</ul>斷開換行,lastChild的獲取結(jié)果也是undefined。
假如最后一個(gè)</li>與</ul>斷開換行,要獲取作業(yè)所說(shuō)的效果,則應(yīng)該是
var mylist = document.getElementById("tcon");
var ?a=mylist.parentNode.parentNode.parentNode.childNodes;
document.write(a[a.length-2].innerHTML);
我也是剛剛悟出來(lái)的,一起學(xué)習(xí),謝謝。