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

完整版标准答案!!!顶我上去

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<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;

    }


    function get_previousSibling(n){

        var x=n.previousSibling;

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

            x=x.previousSibling;

        }

        return x;

    }


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

    document.write(x.nodeName);

    document.write(" = ");

    document.write(x.innerHTML);

    

    while(true){

    x=get_nextSibling(x);

    

    if(x!=null){

        document.write("<br />nextSibling: ");

        document.write(x.nodeName);

        document.write(" = ");

        document.write(x.innerHTML);

    }else{

      document.write("<br>已经是最后一个节点<br>");

      break;

    }

    }

    

    var y=document.getElementsByTagName("li")[5];

    document.write("<br>"+y.nodeName);

    document.write(" = ");

    document.write(y.innerHTML);

    

    while(true){

    y=get_previousSibling(y);

    

    if(y!=null){

        document.write("<br />previousSibling: ");

        document.write(y.nodeName);

        document.write(" = ");

        document.write(y.innerHTML);

    }else{

      document.write("<br>已经是第一个节点");

      break;

    }

    }

</script>

</body>

</html>


提问者:慕粉1058321876 2019-10-05 21:49

个回答

  • RazorE
    2019-11-06 08:40:08

    你是不是发错地方了?