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

大神们帮我解释一下function get_nextSibling(n)这个方法的意思是什么,最好每行都帮我注释一下。

<title>nextSibling</title>

</head>

<body>

<ul id="u1">   

            <li id="a">javascript</li>   

            <li id="b">jquery</li>   

            <li id="c">html</li>   

        </ul>   

        <ul id="u2">   

            <li id="d">css3</li>   

            <li id="e">php</li>   

            <li id="f">java</li>   

        </ul>   

<script type="text/javascript">

    function get_nextSibling(n){

        var x=n.nextSibling;

        while (x && x.nodeType!=1){

            x=x.nextSibling;

        }

        return x;

    }


    var x=document.getElementsByTagName("li")[0];

    document.write(x.nodeName);

    document.write(" = ");

    document.write(x.innerHTML);

    

   

    var y=get_nextSibling(x);


提问者:690017359 2017-09-01 17:05

个回答

  • 日久弥新
    2018-01-24 15:51:06

    看了上面这位大哥的回答,秒懂,万分感谢,他是不断判断下一个节点是否为元素节点,知道为元素节点时,再把他赋值给x返回去

  • S向日葵s
    2017-09-01 20:26:02

    function get_nextSibling(n){

            var x=n.nextSibling;

          // n的下一节点

            while (x && x.nodeType!=1){

         //当n有下一个节点并且不是元素节点的时候执行下列代码

                x=x.nextSibling;

         //将下一个节点赋给x

            }

            return x;

          //返回这个节点

        }


        var x=document.getElementsByTagName("li")[0];

        //获取标签名为li的第一个元素

        document.write(x.nodeName);

        document.write(" = ");

        document.write(x.innerHTML);

        

       

        var y=get_nextSibling(x);

        //调用上面的函数