zoukankan      html  css  js  c++  java
  • 兄弟节点 疑问的

    <!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;
        }
    
        var x=document.getElementsByTagName("li")[0];
        document.write(x.nodeName);
        document.write(" = ");
        document.write(x.innerHTML);
        
        var y=get_nextSibling(x);
        
        if(y!=null){
            document.write("<br />nextsibling: ");
            document.write(y.nodeName);
            document.write(" = ");
            document.write(y.innerHTML);
        }else{
          document.write("<br>已经是最后一个节点");      
        }
    
    </script>
    </body>
    </html>

     注: 这里有一个判断:

    x && x.nodeType!=1 条件为什么是这样呢?

     找兄弟节点

    DOM.nextSibling = function () {
        var a = [];
        var n = ele.nextSibling;
        while (n) {
            if (n.nodeType === 1) {
                a.push(n)
            }
            n = n.nextSibling;
        }
        return a;
    }
  • 相关阅读:
    一点关于this的理解
    BFC引发的关于position的思考
    JS HTML标签尺寸距离位置定位计算
    JS获取网页宽高方法集合
    JSDOM之节点
    并发- synchronized,锁
    公共文件下载-结构设计
    订单模块-结构设计
    ES-update
    ES使用笔记
  • 原文地址:https://www.cnblogs.com/yjhua/p/4589297.html
Copyright © 2011-2022 走看看