為什么while后面的條件里面是x&&x.nodeType??
while (x && x.nodeType!=1){
? ? ? ? ? ? x=x.nextSibling;
? ? ? ? }
x.nodeType我能理解,就是判斷后面的節(jié)點(diǎn)是否為元素節(jié)點(diǎn),但是為什么前面還要加一個(gè)x!=1的判斷呢?在這里返回的x是函數(shù)還是什么東西?
while (x && x.nodeType!=1){
? ? ? ? ? ? x=x.nextSibling;
? ? ? ? }
x.nodeType我能理解,就是判斷后面的節(jié)點(diǎn)是否為元素節(jié)點(diǎn),但是為什么前面還要加一個(gè)x!=1的判斷呢?在這里返回的x是函數(shù)還是什么東西?
2016-06-29
舉報(bào)
2016-06-29
x是節(jié)點(diǎn), x&&x.ondeType!= 1 表示不是空 并且節(jié)點(diǎn)類型不是1
2016-06-29
因?yàn)殚_始時(shí)var x=document.getElementsByTagName("li")[0];,即x為li的第一個(gè)節(jié)點(diǎn),然后調(diào)用getElementsByTagName(x)這個(gè)函數(shù),把x的值傳進(jìn)去,這個(gè)函數(shù)里x的值又發(fā)生了改變var x=n.nextSibling;,x因?yàn)閚.nextSibling而指向了下一個(gè)節(jié)點(diǎn),而下一個(gè)節(jié)點(diǎn)的類型是不知道的,所以要對(duì)x進(jìn)行判斷。說的不太好,希望能理解~