原生js实现查找/添加/删除/指定元素的class

复制代码 代码如下:

  window.onload = function(){

  var gaga = document.getElementById( "gaga" );

  addClass( gaga,"gaga1" )

  addClass( gaga,"gaxx" );

  removeClass( gaga,"gaga1" )

  removeClass( gaga,"gaga" )

  function hasClass( elements,cName ){

  return !!elements.className.match( new RegExp( "(\\s|^)" + cName + "(\\s|$)") ); // ( \\s|^ ) 判断前面是否有空格 (\\s | $ )判断后面是否有空格 两个感叹号为转换为布尔值 以方便做判断

  };

  function addClass( elements,cName ){

  if( !hasClass( elements,cName ) ){

  elements.className += " " + cName;

  };

  };

  function removeClass( elements,cName ){

  if( hasClass( elements,cName ) ){

  elements.className = elements.className.replace( new RegExp( "(\\s|^)" + cName + "(\\s|$)" )," " ); // replace方法是替换

  };

  };

  };