javascript addClass removeClass hasClass #js

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript addClass removeClass hasClass #js相关的知识,希望对你有一定的参考价值。

window.onload = init;

function init() {
  document.getElementById("myDiv").onclick = addMyClass;
}

function addMyClass() {
  var classString = this.className; // returns the string of all the classes for myDiv
  var newClass = classString.concat(" exmaple"); // Adds the class "main__section" to the string (notice the leading space)
  this.className = newClass; // sets className to the new string
}

function removeMyClass(){
    var classString = this.className; // returns the string of all the classes for myDiv
    var newClass = classString.replace(/\bexmaple\b/, ""); // Adds the class "main__section" to the string (notice the leading space)
    this.className = newClass; // sets className to the new string  
}





//another solution


function hasClass(ele,cls) {
  return !!ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}

function addClass(ele,cls) {
  if (!hasClass(ele,cls)) ele.className += " "+cls;
}

function removeClass(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className=ele.className.replace(reg,' ');
  }
}

以上是关于javascript addClass removeClass hasClass #js的主要内容,如果未能解决你的问题,请参考以下文章

原生JS实现JQuery的addClass和removeClass

JavaScript 循环问题,感谢大家!

javascript addClass removeClass hasClass #js

javascript addClass removeClass hasClass #js

JavaScript jQuery addClass

JavaScript addClass函数