组合的思路就是将一个复杂的类分解成容易产生变化的部分和稳定的部分,将容易变化的部分拆分出去,每一种可能的变化设计成一个个单独的类。

  实现样式时采取挂多个class的方式。添加和删除class的js代码如下:
  function addClass(node,str){
  if(!new RegExp("(^|\\s+)"+str).test(node.className)){
     node.className = node.className + " " + str;
  }
}
 
 function removeClass(node,str){
   node.className = node.className.replace(new RegExp("(^|\\s+)"+str),"");
}