• 01-JS中子节点


     JS中子节点

     1  <!DOCTYPE html>
     2  <html>
     3  
     4      <head>
     5          <meta charset="UTF-8">
     6          <title></title>
     7      </head>
     8  
     9      <body>
    10  
    11          <ul id="ul1">
    12              <li></li>
    13              <li></li>
    14          </ul>
    15  
    16      </body>
    17      <script type="text/javascript">
    18          window.onload = function() {
    19              //获得ul
    20              var oul = document.getElementById("ul1");
    21              //当前节点的所有的子节点
    22              //alert(oul.childNodes.length);
    23  
    24              for(var i = 0; i < oul.childNodes.length; i++) {
    25                  //报错:文本节点没有 style 样式
    26                  //oul.childNodes[i].style.background = "red";
    27                  //console.log(oul.childNodes[i].nodeType);
    28                  //兼容性问题:
    29                  //低版本的浏览器: 能正常显示子标签的个数
    30                  //高版本的浏览器: 将文字节点也统计在其中
    31  
    32                  if(oul.childNodes[i].nodeType == 1) {
    33                      oul.childNodes[i].style.background = "red";
    34                  }
    35              }
    36  
    37             //alert(oul.children.length);
    38 
    39         }
    40    </script>
    41 
    42 </html>

    子节点
    1) childNodes
    asdfasfas -> 文本节点

    <ul id="ul1">
    空文本节点 <li></li>
    空文本节点 <li></li>空文本节点
    </ul>

    //获得ul
    var oul = document.getElementById("ul1");
    //当前节点的所有的子节点
    alert(oul.childNodes.length);

    兼容性问题:
    低版本的浏览器:能正常显示子标签的个数
    高版本的浏览器:将文字节点也统计在其中

    困扰:将 li的背景色换成红色

    2)nodeType
    3 --> 文本节点
    1 --> 元素节点

    3) children
    只包括元素节点,不包括文本节点

  • 相关阅读:
    动态表单功能
    IDEA2019版Run Dashboard调出方案
    js页面传递参数为中文乱码问题解决方法
    layui 一行多列控件时使用table布局
    npm 安装包失败 --- 清除npm缓存
    解析数据库连接字符串 (将Data Source、Initial Catalog、User ID、Password取出)
    SQL SERVER 存储过程语法
    mvc5 跨域访问
    钟表
    MVC session过期如何处理跳转(转)
  • 原文地址:https://www.cnblogs.com/liuxuanhang/p/7805740.html
Copyright © 2020-2023  润新知