使用HTML5的classList可以像jQuery一样去操作DOM节点的CSS类

① 在HTML5 API里,页面DOM里的每个节点上都有一个classList对象,程序员可以使用里面的方法新增、删除、修改节点上的CSS类。

② 使用classList,我们还可以用它来判断某个节点是否被赋予了某个CSS类。

③ Element.classList 是一个只读属性,返回一个元素的类属性的实时 DOMTokenList 集合。

④ 相比将 element.className 作为以空格分隔的字符串来使用,classList 是一种更方便的访问元素的类列表的方法。

  • 新增CSS类

使用add方法,你可以往页面元素是新增一个或多个css类:

myDiv.classList.add('myClass');
myDiv.classList.add('myClass1', 'myClass2', ...);
  • 删除一个CSS类

使用remove方法,你可以删除单个CSS类:

myDiv.classList.remove('myClass1');
myDiv.classList.remove('myClass1', 'myClass2', ...);

你可以在这个方法里一次传入多个类名,用空格分开,但执行的结果很有可能不是你预期的。

  • 反转CSS类的有无
myDiv.classList.toggle('myClass'); //现在是增加
myDiv.classList.toggle('myClass'); //现在是删除

当myDiv元素上没有这个CSS类时,它就新增这个CSS类;
反之,如果myDiv元素已经有了这个CSS类,它就是删除它。就是反转操作。

  • 替换某个类
div.classList.replace("myClass1", "myClass2");

该方法两个参数,第二个把第一个替换掉。

  • 检查是否含有某个CSS类
myDiv.classList.contains('myClass');  //returns true or false

目前,几乎所有的现代浏览器(谷歌浏览器,火狐浏览器(Firefox 26 以下的版本并未实现 add/remove/toggle方法中的所有参数)等)都支持这个classList类,所以,相信新型的javaScript类库里都会使用classList类来操作页面CSS类,而不需像以前一样去分析元素节点的class属性!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值