function get_nextSibling(n){
var x=n.nextSibling;
while (x && x.nodeType!=1){
x=x.nextSibling;
}
return x;
}
这个函数 var x=n.nextSilbling
x=x.nextSibling
是不是找的是下下个兄弟节点?
x&&x.NodeType!=1,为甚末还带个x
function get_nextSibling(n){ var x=n.nextSibling; // 进入函数,首先取得下一个兄弟节点 while (x && x.nodeType!=1){ // x存在并且x不是元素节点(若不满足,说明直接找到了兄弟节点,那么就直接返回) x=x.nextSibling; // 满足上述条件,进入循环体,再次取x的兄弟节点赋值给x本身 } return x; }
看完才知道为什么是 !=1了,之前也不明白。