如果是元素节点是不是与上面的 x.nodeType!=1矛盾了
function get_nextSibling(n){
var x=n.nextSibling;
while (x && x.nodeType!=1){
x=x.nextSibling;
}
return x;
}
是的呀,如果nodeType!=1,所以说明这个节点不是元素节点,进入while循环,继续找下一个节点,直到找到第一个元素节点,跳出循环,就找到了最近的一个元素节点。
这样做的主要目的是因为某些浏览器将空文本看成一个节点(不判断可能得到的不是想要的元素节点),算是处理兼容问题的一种吧。