codecamp

HTML DOM classList 属性

HTML DOM classList 属性

元素对象参考手册 元素对象

实例

为 <div> 元素添加 class:

document.getElementById("myDIV").classList.add("mystyle");

尝试一下 »

定义和用法

classList 属性返回元素的类名,作为DOMTokenList 对象。

该属性用于在元素中添加,移除及切换 CSS 类。

classList 属性是只读的,但你可以使用add() 和 remove() 方法修改它。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器的版本号。

属性     
classList8.010.03.65.111.5

语法

element.classList

Properties

属性Description
length返回类列表中类的数量

该属性是只读的

方法

方法描述
add(class1, class2, ...)在元素中添加一个或多个类名。

如果指定的类名已存在,则不会添加 /td>
contains(class)返回布尔值,判断指定的类名是否存在。

可能值:

  • true - 元素包已经包含了该类名
  • false - 元素中不存在该类名
item(index)返回类名在元素中的索引值。索引值从 0 开始。

如果索引值在区间范围外则返回 null
remove(class1, class2, ...)移除元素中一个或多个类名。

注意: 移除不存在的类名,不会报错。
toggle(class, true|false)在元素中切换类名。

第一个参数为要在元素中移除的类名,并返回 false。
如果该类名不存在则会在元素中添加类名,并返回 true。

第二个是可选参数,是个布尔值用于设置元素是否强制添加或移除类,不管该类名是否存在。例如:

移除一个 class: element.classList.toggle("classToRemove", false);
添加一个 class:element.classList.toggle("classToAdd",true);

注意: Internet Explorer 或 Opera 12 及其更早版本不支持第二个参数。

技术描述

返回值:一个 DOMTokenList, 包含元素的类名列表

实例

更多实例

实例

为 <div> 元素添加多个类:

document.getElementById("myDIV").classList.add("mystyle","anotherClass", "thirdClass");

尝试一下 »

实例

为 <div> 元素移除一个类:

document.getElementById("myDIV").classList.remove("mystyle");

尝试一下 »

实例

为 <div> 元素移除多个类:

document.getElementById("myDIV").classList.remove("mystyle","anotherClass", "thirdClass");

尝试一下 »

实例

为 <div> 元素切换类:

document.getElementById("myDIV").classList.toggle("newClassName");

尝试一下 »

实例

获取 <div> 元素的类名:

<div id="myDIV" class="mystyleanotherClass thirdClass">I am a DIV element</div>

var x = document.getElementById("myDIV").classList;

x 输出结果为:

mystyleanotherClass thirdClass

尝试一下 »

实例

查看 <div> 元素有多少个类名:

var x = document.getElementById("myDIV").classList.length;

x 输出结果为:

3

尝试一下 »

实例

获取 <div> 元素的第一个类名(索引为0):

var x = document.getElementById("myDIV").classList.item(0);

x 输出结果为:

mystyle

尝试一下 »

实例

查看元素是否存在 "mystyle" 类:

var x = document.getElementById("myDIV").classList.contains("mystyle");

x 输出结果为:

true

尝试一下 »

实例

查看元素是否存在 "mystyle" 类,如果存在则移除另外一个类名:

var x = document.getElementById("myDIV");

if(x.classList.contains("mystyle")) {
   x.classList.remove("anotherClass");
} else {
   alert("Could not find it.");
}

尝试一下 »

相关文章

CSS 教程: CSS 选择器

CSS 参考手册: CSS .class 选择器

HTML DOM 参考手册: HTML DOM className 属性

HTML DOM 参考手册: HTML DOM getElementsByClassName() 方法

HTML DOM 参考手册: HTML DOM Style 对象

元素对象参考手册 元素对象

温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

HTML DOM对象

HTML DOM 引用对象

HTML DOM Password 对象

HTML DOM Link 对象

HTML DOM Select 对象

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }