问答详情
源自:9-11 访问兄弟节点

依旧不懂get_nextSibling(n)

function get_nextSibling(n){
        var x=n.nextSibling;
        while (x && x.nodeType!=1){
            x=x.nextSibling;
        }
        return x;
    }
 这里为什么while里还有x=x.nextSibling,前边 var x=n.nextSibling不是已经取到下一个节点了吗


提问者:Cherish_jia 2015-03-11 11:46

个回答

  • kucha
    2017-07-25 16:30:37

    我也是,想了好久没有想通,调整代码发现原来是这样:忽略了两个知识点 1) 节点之间的空白符,在firefox、chrome、opera、safari浏览器是文本节点。2)元素节点的节点类型是1,需要的是元素节点,while就是判断获取的兄弟节点不是dom节点就继续遍历,直到遍历到兄弟节点为止


  • qq_因为太帅曾被砍_0
    2016-12-25 14:16:30

    get_nextSibling get_又是什么意思 我晕啊

  • bigbang_money
    2016-09-19 10:22:25

    get_nextSibling(n)我是想知道这个里面的n是什么意思??

  • HuangJiongyao
    2016-08-06 23:27:16

    参数n哪里来的?自动获取的吗?获取的是哪个?

  • qq_勒末_0
    2015-04-06 20:59:00

    前面的var x=n.nextSibling取的是传进来的参数n的下一个节点。

    while里面的x=x.nextSibling是取x的下一节点。