课程
/前端开发
/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 )会出现什么问题?
1 回答兄弟节点有关问题
2 回答为什么 申明了x,而且给x赋值了,var x=n.nextSibling; 在while循环中又赋值一次,岂不是为兄弟节点的兄弟节点了??
1 回答兄弟节点问题
3 回答访问兄弟节点?