小狮子_小棍儿
2015-01-08 16:30
如果它的节点刚好不是元素怎么办?例如刚好是文本节点呢?
假设我们的nextSibling 节点是whitespace,那么该节点的nodeType 不等于 1(因为他是文本节点,他的类型应该是3),所以他会进入while循环。而while循环内的语句是:“x=x.nextSibling;”,这是什么意思呢?意思是我的nextSibling节点不是元素节点(是一个文本节点),我不想要这个文本节点,所以我要再继续找下一个兄弟节点。当下一个节点是元素节点时,那么此时他就不符合while循环里的条件了,所以此时就会之间执行return x;,这个x就是我们需要的身为元素节点的兄弟节点了(有点儿绕口呵呵)。
这个不已经判断了吗,x.nodeType!=1这个就是排除文本节点的
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题