javascript – 如何在CoffeeScript中使用模数编写交替行函数?

我在这里有一个典型的JavaScript代码示例(将背景样式类应用于表中交替的奇数或偶数行的代码).我试图在CoffeeScript中重写这个,试图学习它. CoffeeScript范围语法不同,更具Ruby特色.我真的很感激你如何做到这一点的一个例子?

   function alternate(id){ 
     if(document.getElementsByTagName){  
       var table = document.getElementById(id);   
       var rows = table.getElementsByTagName("tr");   
       for(i = 0; i < rows.length; i++){           
     //manipulate rows 
         if(i % 2 == 0){ 
           rows[i].className = "even"; 
         }else{ 
           rows[i].className = "odd"; 
         }       
       } 
     } 
    }

更新

我正在使用JQuery并尝试这个但它不起作用(它使所有行#efefef):

$(document).ready ->
    rowCount = $('tbody tr')
    for row in rowCount        
        if row.length % 2 == 0
            $('tbody tr').css('background-color', '#363636')
        else
            $('tbody tr').css('background-color', '#efefef')

解决方法:

更简洁一点:

for row, i in $('tbody tr')
  color = if i % 2 is 0 then '#363636' else '#efefef'
  $(row).css 'background-color', color
上一篇:linux – 如何从hubot执行shell脚本


下一篇:javascript – 为什么我不能链接这一系列的lodash调用?