我们需要来写 addClass 方法 , 在添加class的时候,需要判断是否已经存在 ,如果没有存在即添加。
所以我们准备两个方法, 一个是addClass, 另一个则是 hasClass ;
首先是hasClass方法 :
function hasClass(ele , className){
/*通過正則表達式來判斷*/
let reg= new RegExp("(^|\\s)"+className+"(\\s|$)");
return reg.test(ele.className);
}
当我们准备好hasClass方法后,就可以来写addClass了。如下:
function addClass(ele,className){
if(!hasClass(ele,className)){
/*先转化为数组*/
var newClassArray = ele.className.split(" ");
/*往数组中添加新的class*/
newClassArray.push(className);
/*将数组转化为string , 再进行赋值操作*/
ele.className = newClassArray.join(" ");
}
}