JavaScript利用html5新方法操作元素类名详解


Posted in Javascript onNovember 27, 2021

早先JavaScript处理起来特别不方便,需要先取到class属性,然后对字符串进行处理。

现在html5给所有元素增加了classList属性来操作类属性,非常方便。

1、classList属性

先看如下代码:

<ul class="nav">

    <li class="active">栏目1</li>

    <li>栏目2</li>

    <li>栏目3</li>

</ul>

<script type="text/javascript">

    // 获取到当前的li元素

    let activeLi = document.querySelector(".active");

    // 打印classList属性

    console.log(activeLi.classList)

    // 控制台输出:

    //     DOMTokenList ['active', value: 'active']

</script>

控制台查看效果:

classList属性类型:

JavaScript利用html5新方法操作元素类名详解

classList属性是 DOMTokenList 类型,可以通过addcontainsremove等方法对类属性进行操作。

  • add(value) 新增加一个类名。
  • contains(value) 是否包含类名。
  • remove(value) 删除类名。
  • toggle(value) 如果类名存在则删除,否则添加。

2、实务应用

实务中,栏目是切换是很常用的一个应用。接上面的例子,当点击栏目时 将 active 移动到对应的栏目

<ul class="nav">

    <li class="item active">栏目1</li>

    <li class="item">栏目2</li>

    <li class="item">栏目3</li>

</ul>

 

<script type="text/javascript">

    let currentElement = document.querySelector(".nav").firstElementChild;

    // 遍历li元素设置点击事件

    while (currentElement) {

        currentElement.onclick = function() {

            // 移除激活li的active

            document.querySelector(".active").classList.remove("active");

            // 当前li类增加active

            this.classList.add("active");

        }

        currentElement = currentElement.nextElementSibling;

    }

</script>

这样实现起来就很方便了,不用影响到其他类名。

到此这篇关于JavaScripthtml5新方法操作元素类名详解的文章就介绍到这了,更多相关JavaScripthtml5新方法操作元素类名内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
火狐4、谷歌12不支持Jquery Validator的解决方法分享
Jun 20 Javascript
jquery ui对话框实例代码
May 10 Javascript
浅谈页面装载js及性能分析方法
Dec 09 Javascript
js实现DOM走马灯特效的方法
Jan 21 Javascript
JavaScript中字符串分割函数split用法实例
Apr 07 Javascript
jQuery on()方法使用技巧详解
Apr 16 Javascript
jQuery事件绑定用法详解
Sep 08 Javascript
Centos6.8下Node.js安装教程
May 12 Javascript
vuex实现的简单购物车功能示例
Feb 13 Javascript
Vue自定义属性实例分析
Feb 23 Javascript
Vue-CLI 项目在pycharm中配置方法
Aug 30 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
Dec 29 Javascript
一文了解JavaScript用Element Traversal新属性遍历子元素
Nov 27 #Javascript
JavaScript选择器函数querySelector和querySelectorAll
Nov 27 #Javascript
关于JavaScript 中 if包含逗号表达式
Nov 27 #Javascript
JavaScript中MutationObServer监听DOM元素详情
Nov 27 #Javascript
JavaScript中document.activeELement焦点元素介绍
Nov 27 #Javascript
利用JavaScript写一个简单计算器
JavaScript中的宏任务和微任务详情
Nov 27 #Javascript
You might like
基于mysql的论坛(2)
2006/10/09 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
jQuery 中关于CSS操作部分使用说明
2007/06/10 Javascript
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
2014/03/17 Javascript
js+jquery实现图片裁剪功能
2015/01/02 Javascript
$.extend 的一个小问题
2015/06/18 Javascript
原生js模拟淘宝购物车项目实战
2015/11/18 Javascript
jQuery解析json格式数据简单实例
2016/01/22 Javascript
node.js实现爬虫教程
2020/08/25 Javascript
angular中如何绑定iframe中src的方法
2019/02/01 Javascript
解决vue打包后刷新页面报错:Unexpected token
2019/08/27 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
请求时token过期自动刷新token操作
2020/09/11 Javascript
[02:31]DOTA2帕克 英雄基础教程
2013/11/26 DOTA
python去除字符串中的换行符
2017/10/11 Python
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
Python文件循环写入行时防止覆盖的解决方法
2018/11/09 Python
Windows下实现将Pascal VOC转化为TFRecords
2020/02/17 Python
django从后台返回html代码的实例
2020/03/11 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
想学画画?python满足你!
2020/12/24 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
纯css3实现效果超级炫的checkbox复选框和radio单选框
2014/09/01 HTML / CSS
日本最大级玩偶手办购物:あみあみ Amiami
2018/04/23 全球购物
linux面试题参考答案(10)
2016/10/26 面试题
合作经营协议书范本
2014/04/17 职场文书
债务纠纷委托书范本
2014/10/14 职场文书
2014年财政所工作总结
2014/11/22 职场文书
《狼牙山五壮士》教学反思
2016/02/17 职场文书
详解redis分布式锁的这些坑
2021/05/19 Redis
Java基于字符界面的简易收银台
2021/06/26 Java/Android
MySQL七大JOIN的具体使用
2022/02/28 MySQL
Java实现简单小画板
2022/06/10 Java/Android