課程
/前端開發
/JavaScript
/JavaScript進階篇
如果它的節點剛好不是元素怎么辦?例如剛好是文本節點呢?
2015-01-08
源自:JavaScript進階篇 9-11
正在回答
假設我們的nextSibling 節點是whitespace,那么該節點的nodeType 不等于 1(因為他是文本節點,他的類型應該是3),所以他會進入while循環。而while循環內的語句是:“x=x.nextSibling;”,這是什么意思呢?意思是我的nextSibling節點不是元素節點(是一個文本節點),我不想要這個文本節點,所以我要再繼續找下一個兄弟節點。當下一個節點是元素節點時,那么此時他就不符合while循環里的條件了,所以此時就會之間執行return x;,這個x就是我們需要的身為元素節點的兄弟節點了(有點兒繞口呵呵)。
這個不已經判斷了嗎,x.nodeType!=1這個就是排除文本節點的
小獅子_小棍兒 提問者
內涵Naruto 回復 小獅子_小棍兒 提問者
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
3 回答在訪問兄弟節點一課的練習當中,關于條件語句 while(x && x.nodeType!=1)改成while(x && nodeType!=0 )會出現什么問題?
2 回答為什么 申明了x,而且給x賦值了,var x=n.nextSibling; 在while循環中又賦值一次,豈不是為兄弟節點的兄弟節點了??
1 回答訪問兄弟節點,while判斷的問題
2 回答訪問兄弟節點
1 回答兄弟節點有關問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-05-20
假設我們的nextSibling 節點是whitespace,那么該節點的nodeType 不等于 1(因為他是文本節點,他的類型應該是3),所以他會進入while循環。而while循環內的語句是:“x=x.nextSibling;”,這是什么意思呢?意思是我的nextSibling節點不是元素節點(是一個文本節點),我不想要這個文本節點,所以我要再繼續找下一個兄弟節點。當下一個節點是元素節點時,那么此時他就不符合while循環里的條件了,所以此時就會之間執行return x;,這個x就是我們需要的身為元素節點的兄弟節點了(有點兒繞口呵呵)。
2015-01-08
這個不已經判斷了嗎,x.nodeType!=1這個就是排除文本節點的