JS代码问题,下列代码求解

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

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

  <script type="text/javascript">  

     window.onload = function(){  //网页加载事件

        Highlight();

     }  

     

     function Highlight(){

         var tbody = document.getElementById('table').lastChild;    //table节点的最后一个子节点不是最后一个tr节点嘛?怎么成数组了?

        trs = tbody.getElementsByTagName('tr');   

        for(var i =1;i<trs.length;i++){    

            trs[i].onmouseover = function(){

                this.style.backgroundColor ="#f2f2f2";

            } 

            trs[i].onmouseout = function(){

                this.style.backgroundColor ="#fff";

            } 

        }  

     }

          

     function addOne(obj){ 

        var tbody = document.getElementById('table').lastChild;  

        var tr = document.createElement('tr');  

         

         var td = document.createElement("td");

         td.innerHTML = "<input type='text'/>";

         tr.appendChild(td);

         

         td = document.createElement("td");     

         td.innerHTML = "<input type='text'/>";

         tr.appendChild(td);

         

         td = document.createElement("td");    

         td.innerHTML = "<a href='javascript:;' onclick='deleteRow(this)'>删除</a>";

         tr.appendChild(td);   

         

         tbody.appendChild(tr);   //table节点的最后一个子节点不是最后一个tr节点嘛?再添加tr?

        Highlight();

        }


     function deleteRow(obj){

        var tbody = document.getElementById('table').lastChild;   //table节点的最后一个子节点不是最后一个tr节点嘛?对它做移除tr怎么个意思?

        var tr = obj.parentNode.parentNode;

         tbody.removeChild(tr);

     }



  </script> 

 </head> 

 <body> 

       <table border="1" width="50%" id="table">

       <tr>

        <th>学号</th>

        <th>姓名</th>

        <th>操作</th>

       </tr>  




var tbody = document.getElementById('table').lastChild; 这里id为table的table节点的最后一个子节点不是最后一个tr节点嘛?不是只有一个嘛?怎么成数组了?


繁花不似锦
浏览 467回答 2
2回答

大话西游666

Hello,返回的不是数组节点。而是table下的tbody节点标签。现代浏览器为适应w3c标准自行添加了这个标签。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript