黑马程序员技术交流社区

标题: JavaScript中表格操作问题 [打印本页]

作者: 黄树人    时间: 2012-9-7 20:10
标题: JavaScript中表格操作问题
  1. <script type="text/javascript">
  2. //记录原来的初始值
  3. var name;


  4. function tableLoad()
  5. {
  6.         //获取表格元素
  7.         var tableNode = document.getElementsByTagName("table")[0];
  8.         //alert(tableNode);
  9.         //获取所有的行元素
  10.         //var trNodes = tableNode.getElementsByTagName("tr");
  11.         var trNodes = tableNode.rows;
  12.         //alert(trNodes.length);
  13.        
  14.         for(var x=1; x<trNodes.length; x++)
  15.         {
  16.                 //隔行变色效果
  17.                 if(x%2==1)
  18.                 {
  19.                         trNodes[x].className = "one";
  20.                 }
  21.                 else
  22.                 {
  23.                         trNodes[x].className = "two";
  24.                 }
  25.                
  26.                 //注册鼠标移动事件
  27.                 trNodes[x].onmousemove = function()
  28.                 {
  29.                         name = this.className;
  30.                         this.className = "over";
  31.                 }
  32.                
  33.                 trNodes[x].onmouseout = function()
  34.                 {
  35.                         this.className = name;
  36.                 }
  37.         }
  38. }
  39. </script>
复制代码
我想通过鼠标移动事件来使表格达到隔行变色的效果,
我先定义name来记录这一行的原本颜色,然后把但数行给颜色“one”,
偶数行给颜色“two”,然后调用鼠标移动事件使鼠标移动到该行上,颜色转换
我上面的代码已经实现了变色,只是当鼠标移开以后,颜色缺变不回来了
不知道代码哪里出了问题,希望大家帮忙看看




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2