详解使用HTML5的classList属性操作CSS类


Posted in HTML / CSS onOctober 13, 2017

前言

以前我们有需要用js或jquery的一些方法hasClass、addClass、removeClass,在一个元素的class属性上添加或者删除某几个类,达到某种样式变化的需求,但还是稍微麻烦了一些。
h5新增的classList可以让我们更方便的元素的类名进行操作。

注意

classList兼容性有些差,不兼容ie10以下的ie浏览器。

示例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>classList</title>
    <style>
        .mystyle {
            width: 300px;
            height: 50px;
            background-color: red;
            color: white;
            font-size: 25px;
        }
    </style>
</head>
<body>

<p>点击按钮为DIV元素添加 "mystyle" 类。</p>
<button onclick="myFunction()">点我</button>
<div id="myDIV">
    我是一个 DIV 元素。
</div>
<script>
    function myFunction() {
        document.getElementById("myDIV").classList.add("mystyle");
    }
</script>

</body>
</html>

详解使用HTML5的classList属性操作CSS类

新增类

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

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

删除一个类

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

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

在元素中切换类名

在元素中切换类名。使用toggle方法,语法:toggle(class, true|false)

第一个参数为要在元素中移除的类名,并返回 false。

如果该类名不存在则会在元素中添加类名,并返回 true。

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

移除一个

document.getElementById("myDIV").classList.toggle("classToRemove", false);

添加一个

document.getElementById("myDIV").classList.toggle("classToAdd", true);

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

检查是否含有某个类

使用contains方法,判断某个类是否存在,返回布尔值。

//returns true or false
 document.getElementById("myDIV").classList.contains("myDIV");

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
纯css3实现的鼠标悬停动画按钮
Dec 23 HTML / CSS
纯CSS3实现8组超炫酷鼠标滑过图片动画
Mar 16 HTML / CSS
CSS3 @keyframes简单动画实现
Feb 24 HTML / CSS
HTML5实现表单自动验证功能实例代码
Jan 11 HTML / CSS
关于老式浏览器兼容HTML5和CSS3的问题
Jun 01 HTML / CSS
html5中的一些标签学习(心得)
Oct 18 HTML / CSS
使用phonegap查找联系人的实现方法
Mar 31 HTML / CSS
完美解决IE8下不兼容rgba()的问题
Mar 31 HTML / CSS
html5中canvas图表实现柱状图的示例
Nov 13 HTML / CSS
基于HTML5的WebGL经典3D虚拟机房漫游动画
Nov 15 HTML / CSS
canvas如何实现多张图片编辑的图片编辑器
Mar 10 HTML / CSS
浅谈移动端中的视口(viewport)的具体使用
Apr 13 HTML / CSS
HTML5网页音乐播放器的示例代码
Nov 09 #HTML / CSS
js实现移动端H5页面手指滑动刻度尺功能
Nov 16 #HTML / CSS
HTML5实现视频直播功能思路详解
Nov 16 #HTML / CSS
基于HTML5 Canvas 实现商场监控实例详解
Nov 20 #HTML / CSS
微信浏览器左上角返回按钮拦截功能
Nov 21 #HTML / CSS
html5使用Canvas绘图的使用方法
Nov 21 #HTML / CSS
详解HTML5新增标签
Nov 27 #HTML / CSS
You might like
一个完整的php文件上传类实例讲解
2015/10/27 PHP
PHP中使用foreach()遍历二维数组的简单实例
2016/06/13 PHP
关于PHP内置的字符串处理函数详解
2017/02/04 PHP
js option删除代码集合
2008/11/12 Javascript
优化javascript的执行速度
2010/01/23 Javascript
jquery动态增加删除表格行的小例子
2013/11/14 Javascript
javascript中的throttle和debounce浅析
2014/06/06 Javascript
Windows8下搭建Node.js开发环境教程
2014/09/03 Javascript
使用bootstrap3开发响应式网站
2016/05/12 Javascript
原生js代码实现图片放大境效果
2016/10/30 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
2017/09/11 Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
2018/01/10 Javascript
10分钟上手vue-cli 3.0 入门介绍
2018/04/04 Javascript
Vue 动态设置路由参数的案例分析
2018/04/24 Javascript
原生JavaScript实现remove()和recover()功能示例
2018/07/24 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
通过javascript实现扫雷游戏代码实例
2020/02/09 Javascript
vue随机验证码组件的封装实现
2020/02/19 Javascript
javascript canvas实现简易时钟例子
2020/09/05 Javascript
jQuery冲突问题解决方法
2021/01/19 jQuery
python机器学习之神经网络(一)
2017/12/20 Python
Python定义二叉树及4种遍历方法实例详解
2018/07/05 Python
pyqt5 使用cv2 显示图片,摄像头的实例
2019/06/27 Python
Django框架模板用法入门教程
2019/11/04 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
2020/05/26 Python
python的pip有什么用
2020/06/17 Python
澳洲在线厨具商店:Kitchen Style
2018/05/05 全球购物
构建高效课堂实施方案
2014/03/13 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
2015年银行信贷员工作总结
2015/05/19 职场文书
麦田里的守望者读书笔记
2015/06/30 职场文书
九年级历史教学反思
2016/02/19 职场文书
《秋思》教学反思
2016/02/23 职场文书
python spilt()分隔字符串的实现示例
2021/05/21 Python
排查MySQL生产环境索引没有效果
2022/04/11 MySQL