对例题中get_nextSibling(n)函数有点不解

来源:9-11 访问兄弟节点

Neversrd

2016-02-06 18:08

function get_nextSibling(n){
    var x=n.nextSibling;
    while(x.nodeType!=1){
        x=x.nextSibling;
    }
    return x;
}

当x.nodeType不为1时,说明x也就是n的下一节点不是空节点,这个时候直接返回x不就行了,为什么还要使x=x.nextSibling?我想是不是应该把while里的条件改成x.nodeType==1?

谢谢

写回答 关注

2回答

  • hcl哦了
    2016-02-26 16:55:54

         开始我也想不明白,然后我问的我哥,原话给你:
    你是不是虾?没看见前面有个var x=n.nextSibling;,这说明是什么~~说明x不是li了,而变成了空白格#text。。空白格.nodeType当然不等于1了!你的幼儿园老师虽然是我,但是我还没死呀!!!然后执行空白格.nextSibling,当然就是在空白格的基础上,跳到了下一个li。       

    多一个人一起承受总是舒服点~~~   

    lihuwe...

    n的初值一直搞不懂

    2016-02-29 12:29:16

    共 2 条回复 >

  • 执念bxf
    2016-02-06 21:49:35

    x = x.nextSibling是找id为b的节点,get_nextSibling()函数的功能:返回id为a的节点的下一个节点

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题