zoukankan      html  css  js  c++  java
  • js table隔行变色

      // this function is need to work around 
      // a bug in IE related to element attributes
      function hasClass(obj) {
         var result = false;
         if (obj.getAttributeNode("class") != null) {
             result = obj.getAttributeNode("class").value;
         }
         return result;
      }   

     function stripe(id) {

        // the flag we'll use to keep track of 
        // whether the current row is odd or even
        var even = false;
      
        // if arguments are provided to specify the colours
        // of the even & odd rows, then use the them;
        // otherwise use the following defaults:
        var evenColor = arguments[1] ? arguments[1] : "#fff";
        var oddColor = arguments[2] ? arguments[2] : "#eee";
      
        // obtain a reference to the desired table
        // if no such table exists, abort
        var table = document.getElementById(id);
        if (! table) { return; }
        
        // by definition, tables can have more than one tbody
        // element, so we'll have to get the list of child
        // <tbody>s 
        var tbodies = table.getElementsByTagName("tbody");

        // and iterate through them...
        for (var h = 0; h < tbodies.length; h++) {
        
         // find all the &lt;tr&gt; elements... 
          var trs = tbodies[h].getElementsByTagName("tr");
          
          // ... and iterate through them
          for (var i = 0; i < trs.length; i++) {

            // avoid rows that have a class attribute
            // or backgroundColor style
            if (!hasClass(trs[i]) && ! trs[i].style.backgroundColor) {
     
             // get all the cells in this row...
              var tds = trs[i].getElementsByTagName("td");
            
              // and iterate through them...
              for (var j = 0; j < tds.length; j++) {
            
                var mytd = tds[j];

                // avoid cells that have a class attribute
                // or backgroundColor style
                if (! hasClass(mytd) && ! mytd.style.backgroundColor) {
            
                  mytd.style.backgroundColor = even ? evenColor : oddColor;
                  
                }
              }
            }
            // flip from odd to even, or vice-versa
            even =  ! even;
          }
        }
      }
  • 相关阅读:
    myeclipse中无自动提示
    ueditor使用方法
    微软开发中心的rss历史记录(10)
    微软开发中心的rss历史记录(9)
    微软开发中心的rss历史记录(6)
    微软开发中心的rss历史记录(7)
    微软开发中心的rss历史记录(8)
    P4学习:统计功能
    openCL信息汇总
    GPU/CUDA程序初体验 向量加法
  • 原文地址:https://www.cnblogs.com/shihao/p/2215788.html
Copyright © 2011-2022 走看看