给某元素添加指定class名——纯JS
function addClass(obj,classname){ //obj给哪个元素添加,className添加的属性名 if(obj.className==""){ //如果原来没有class obj.className=classname; //元素的属性名等于需要添加的属性名 }else{ //如果原来有class var arrClassName=obj.className.split(" "); //把元素的class属性的值分割成数组 var _index=arrIndexOf(arrClassName,classname); //判断给定的class值在元素的class里是否存在,如果存在变量是下标,如果不存在变量是-1 if(_index==-1){ //如果要添加的class在原来的class中不存在则添加class obj.className+=" "+classname; } //如果要添加的class在原来的class中存在则不需要操作 } } function arrIndexOf(arr,v){ //判断数组arr里是否存在给定元素v for(var i=0;i<arr.length;i++){ if(arr[i]==v){ return i; //如果存在给定元素,返回元素存在的下标 } } return -1; //如果不存在返回-1 }
调用方法:addClass(给哪个元素添加,"添加的class名");
var aa=document.getElementById("wo"); addClass(aa,"box1");