js-classList修改class属性
classList定义与用法
1)classList属性返回元素的类名,作为DOMTokenList对象
2)该属性用于在元素中添加,移除及切换css类
3)classList属性是只读的,但可以用add()和remove()方法修改他。

方法:
1.添加class属性--add()
方法:add(class1,class2,...)
描述:1.在元素中添加一个或多个类名;2.如果指定的类名已存在,则不会添加
1).增加一个class
document.getElementById("p").classList.add("p-a-0");
----<p id="p" class="p1 addp1 p-a-0">白色的范畴你傻逼</p>
2).增加多个class
document.getElementById("p").classList.add("p-a-0","p-a-1","p-a-2" );
----<p id="p" class="p1 addp1 p-a-0 p-a-1 p-a-2">白色的范畴你傻逼</p>
2.删除class="addp1"--remove()
方法:remove(class1,class2,...)
描述:移除一个或多个class(移除不存在的class,不报错)
1).移除一个class
document.getElementById("p").classList.remove("addp1");
----<p id="p" class="p1">白色的范畴你傻逼</p>
2).移除多个class
document.getElementById("p").classList.remove("addp1",“p1”);
----<p id="p">白色的范畴你傻逼</p>
3.在元素中切换类名---toggle()
方法:toggle(class,true/false)
描述:在元素中切换类名。
第一个参数为要在元素中添加类名,并返回false。如果该类名不存在则会在元素中添加类名,并返回true.
第二个是可选参数,是个布尔值用于设置元素是否强制添加或移除类,不管该类名是否存在。列如:
移除一个class: element.classList.toggle("classToRemove",false)
添加一个class: element.classList.toggle("classToRemove",true)
注意: Internet Explorer 或 Opera 12 及其更早版本不支持第二个参数。
1). document.getElementById("p").classList.toggle("newClassName");
4.实例:获取元素的类名
<div id="myDIV" class="mystyle anotherClass thirdClass">I am a DIV element</div>
var x = document.getElementById("myDIV").classList;
返回结果:x----mystyle anotherClass thirdClass
5.判断元素是否存在某个class---contains()
方法:contains(class)
描述:返回布尔值,判断指定的类名是否存在。
true:元素已经包含了该类
false:元素中不存在该类
1)实例:查看元素是否存在 "mystyle" 类:
<div id="myDIV" class="mystyle anotherClass thirdClass">我是一个 DIV 元素</div>
var x = document.getElementById("myDIV").classList.contains("mystyle");
----返回结果x---true
6.返回类名在元素中的索引值。索引值从0开始---item()
方法:item(index)
描述:如果索引值在区间范围外则返回 null
1).实例:获取 <div> 元素的第一个类名(索引为0):
<div id="myDIV" class="mystyle anotherClass thirdClass">我是一个 DIV 元素</div>
----var x = document.getElementById("myDIV").classList.item(0);
----返回结果x---mystyle
属性:
1.查看类名的个数--length
属性:length
描述:返回类列表中类的数量(只读)
1.<p id="p" class="p1 addp1 p-a-0">白色的范畴你傻逼</p>
----document.getElementById("p").classList.length
----返回答案:
js-classList修改class属性的更多相关文章
- js循环修改数组属性key值
var keyMap = { deviceUid: "id", deviceType: "typeName", deviceCode: "code&q ...
- js内置构造函数属性修改问题
在学习js原型时遇到一个问题,Array,Object等内置构造函数部分属性无法修改,我猜测可能是因为浏览器实现的原因造成的. 1.修改name属性无效. <script type=" ...
- 2.23 js处理日历控件(修改readonly属性)
2.23 js处理日历控件(修改readonly属性) 前言 日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如 ...
- js 修改css属性值
js不能修改样式表 但是可以修改元素:比如 <div id="test" class="star-rating"></div> 对于上面 ...
- 使用原生JS 修改 DIV 属性
本例参考并改进自:https://www.jianshu.com/p/2961d9c317a3 大家可以一起学习!! <!DOCTYPE html> <html lang=" ...
- 昆仑游戏[JS加密修改]
昆仑游戏:http://www.kunlun.com/index.html JS加密修改 BigTools=window.BigTools;//重点 RSAKeyPair=window.RSAKeyP ...
- 自己动手丰衣足食之轮播图一动态修改marginTop属性实现轮播图
引言 学习jQuery有年头了,刚开始学习时自己动手写过轮播图,放的久了以至于忘了大致思路了.现在转而做前端,抽空把jquery轮播图拿出来写一写,把各种思路都自己练习练习,这里主要使用动态修改mar ...
- [Effective JavaScript 笔记]第32条:始终不要修改__proto__属性
__proto__属性很特殊,它提供了Object.getPrototypeOf方法所不具备的额外能力,即修改对象原型链接的能力. 避免修改__proto__属性的最明显的原因是可移植性的问题.并不是 ...
- 用JS查看修改CSS样式(cssText,attribute('style'),currentStyle,getComputedStyle)
CSS样式定义方法 大家都知道,在为HTML设置样式的时候,通常有三种方法:内联样式,内部样式表,外部样式表. 1.内联样式: 内联样式表就是在HTML元素中的行内直接添加style属性. <d ...
- 修改html 属性,css样式。
一 通过修改标签属性来改变它的样式 js设置和获取标签的属性 <script type="text/javascript"> window.onload = func ...
随机推荐
- LeetCode之Weekly Contest 90
LeetCode第90场周赛记录 第一题:亲密字符串 问题: 给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true :否则返回 ...
- mysql 的 case when 用法
正确的格式: case when condition then result when condition then result when condition then result else re ...
- Vue之数据传递
基础:vue的响应式规则 简单的props更新 父组件 <template> <div> <block-a :out-data="x">< ...
- 如何用纯 CSS 创作一颗逼真的土星
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/EpbaQX 可交互视频 ...
- 【windows】win7 sp1 系统语言中英文切换
注:Windows 7 Ultimate and Windows 7 Enterprise (旗舰版和企业版) 可以直接在控制面板/地区和语言中修改显示语言,其他系统不行 进入网站下载相关的MUI包安 ...
- sql 单表/多表查询去除重复记录
单表distinct 多表group by group by 必须放在 order by 和 limit之前,不然会报错 *************************************** ...
- poj--1064
题意:有N条绳子,它们的长度分别为Li.如果从它们中切割出K条长度相同的绳子的话,这K条绳子最长能有多长?答案保留到小数点后2位. 思路:这些最大最小化问题大多数可以用二分查找的方法来解题 用 d 表 ...
- 对java多线程的一些浅浅的理解
作为一名JAVA初学者,前几天刚刚接触多线程这个东西,有了些微微的理解想写下来(不对的地方请多多包涵并指教哈). 多线程怎么写代码就不说了,一搜一大堆.说说多线程我认为最难搞的地方,就是来回释放锁以及 ...
- HDU 3639 SCC Hawk-and-Chicken
求SCC缩点,统计出每个SCC中的点的个数. 然后统计能到达u的最多的点的个数,可以反向建图,再dfs一遍统计出来. 最后说一下,有必要开一个标记数组,因为测试数据中有重边,结果无限WA. #incl ...
- 智能DNS解析之edns-client-subnet篇
摘要:智能DNS解析是CDN的重要组成部份,所谓的智能也就是根据请求用户来对同一域名作出相应不同解析(目前大多数域名注册商还没提供线路解析的服务),所以CDN的调度准确性也就完全依靠DNS智能解析,但 ...