问答详情
源自:9-22 编程练习

为什么我这个代码鼠标事件实现不了

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

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

  <script type="text/javascript"> 

  

       window.onload = function(){

          var tr = document.getElementsByTagName("tr");

          for(var i=0;i<tr.length;i++){

              color(tr[i]);

          }

      } 

     // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。

    function color(obj){

       obj.onmouseover=function(){

            obj.style.backgroundColor="#f2f2f2";

        }obj.onmouseout=function(){

            obj.style.backgroundColor="#fff";

        }

    }   

 

      

      // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;

     var a=2;

     function add(){

         a++;

         var tab = document.getElementById("table");

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

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

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

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

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

         num.innerHTML="xh00"+a;

         name.innerHTML="第"+a+"个学生";

         tr.appendChild(num);

         tr.appendChild(name);

         tr.appendChild(c);

         tab.appendChild(tr);

         var tr=document.getElementsByTagName("tr");

          for(var i=0;i<tr.length;i++){

              color(tr[i]);

          }

     }

     

     

     // 创建删除函数

     function d(obj){

         var t = obj.parentNode.parentNode;

         t.parentNode.removeChild(t);

     } 


  </script> 

 </head> 

 <body> 

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

   <tr>

<th>学号</th>

<th>姓名</th>

<th>操作</th>

   </tr>  


   <tr>

<td>xh001</td>

<td>王小明</td>

<td><a href="javascript:;" onclick="d(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->

   </tr>


   <tr>

<td>xh002</td>

<td>刘小芳</td>

<td><a href="javascript:;" onclick="d(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->

   </tr>  


   </table>

   <input type="button" value="添加一行"  onclick="add()"/>   <!--在添加按钮上添加点击事件  -->

 </body>

</html>


提问者:weixin_慕婉清6397184 2019-07-23 15:57

个回答

  • 吴量
    2019-07-23 22:16:34

    function color(obj){

           obj.onmouseover=function(){

                obj.style.backgroundColor="#f2f2f2";

            }obj.onmouseout=function(){

                obj.style.backgroundColor="#fff";

            }

        }   

    第二个obj换下行,试试,你编辑器这点不报错么