JS - 事件 - 获取所有子节点

1. 获取所有子节点


<html>  
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>JStitle>
    head> 
<style>
    body {
        text-align: center;
    }
style>
    <body>
        <div id="box">
            <button class="btn" onclick="doClick()">按钮button>
            <span id="span">
                <a href="#">百度一下a>
            span>
            <p>我是段落p>
        div>
    <script type="text/javascript">
        function doClick() {
            var box = document.getElementById("box");
            //获取第一个子节点
            console.log("获取第一个子节点");
            console.log(box.firstElementChild || box.firstChild);
            //获取最后一个子节点
            console.log("获取最后一个子节点");
            console.log(box.lastElementChild || box.lastChild);
            // 获取所有子节点
            console.log("获取所有子节点");
            var allNodeList = box.childNodes;
            console.log(allNodeList);

            console.log("=======");
            var newList = [];
            for (var i = 0; i < allNodeList.length; i++) {
                var node = allNodeList[i];
                if (node.nodeType === 1) {   //判断类型
                    newList.push(node);
            }
        }
        console.log(newList);
      }
script>
  body>
html>

Result:

JS - 事件 - 获取所有子节点_第1张图片

2. 获取直接子节点


<html>  
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>JStitle>
    head>
  
  <body>
      <div id="box">
          <button class="btn" onclick="doClick()">按钮button>
          <span id="span">
              <a href="#">百度一下a>
          span>
          <p>我是段落p>
      div>
      <script type="text/javascript">
         function doClick() {
            var box = document.getElementById("box");
            //输出一级子节点
            var nodeList = box.children;
            console.log(nodeList);
        }
       script>
  body>
html>

Result:

JS - 事件 - 获取所有子节点_第2张图片

你可能感兴趣的:(html)