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