关键词

js判断样式className同时增加class或删除class

要判断并增加或删除元素的class,可以使用JavaScript中的classList属性和toggle()方法。classList属性是一个只读的、表示元素类名的集合(DOMTokenList),可以用于添加、删除和切换类名。toggle()方法会在元素中切换一个类名(如果该类名不存在,则添加之;否则删除之)。

以下是增加class的示例:

var element = document.getElementById("myElement");
if (element.classList) {
  element.classList.add("myClass");
} else {
  element.className += " myClass";
}

这个代码段首先检查元素是否有classList属性,如果有,就使用classListadd() 方法添加类名;否则,使用className属性将类名添加到元素。

以下是删除class的示例:

var element = document.getElementById("myElement");
if (element.classList) {
  element.classList.remove("myClass");
} else {
  var regExp = new RegExp("(\\s|^)" + "myClass" + "(\\s|$)");
  element.className = element.className.replace(regExp, " ");
}

这个代码段使用类似的方法来删除类名,只是这里使用remove()方法或者replace()方法来删除类名。

在单个元素上添加或删除类名可能很简单。但如果需要在多个元素上执行相同的操作,则需要迭代这些元素,并分别为它们添加或删除类名。以下是一个使用querySelectorAll()方法选中并添加类名的示例:

var elements = document.querySelectorAll(".myElements");
Array.prototype.forEach.call(elements, function(el, i){
  el.classList.add("myClass");
});

这个代码段选择所有类名为myElements的元素,并使用forEach方法迭代元素列表并为它们添加myClass类名。

希望这个完整攻略对你有帮助!

本文链接:http://task.lmcjl.com/news/8681.html

展开阅读全文