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 相关文章推荐
一个简单的jquery进度条示例
Apr 28 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
Jul 15 Javascript
BootStrap入门教程(一)之可视化布局
Sep 19 Javascript
微信小程序 navigation API实例详解
Oct 02 Javascript
JS实现根据密码长度显示安全条功能
Mar 08 Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
May 10 Javascript
Bootstrap与Angularjs的模态框实例代码
Aug 03 Javascript
vue+elementUI实现表格关键字筛选高亮
Oct 26 Javascript
VUE+node(express)实现前后端分离
Oct 13 Javascript
jQuery 实现扁平式小清新导航
Jul 07 jQuery
Vue+Bootstrap实现简易学生管理系统
Feb 09 Vue.js
js基础语法与maven项目配置教程案例
Jul 15 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
thinkPHP简单遍历数组方法分析
2016/05/16 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
2019/10/18 PHP
javascript IE中的DOM ready应用技巧
2008/07/23 Javascript
jQuery 事件队列调整方法
2009/09/18 Javascript
javascript void(0)的妙用
2009/10/21 Javascript
表单验证的完整应用案例探讨
2013/03/29 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
2013/11/12 Javascript
jQuery实现tab标签自动切换的方法
2015/02/28 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
jQuery简单实现日历的方法
2015/05/04 Javascript
JS表格组件神器bootstrap table详解(强化版)
2016/05/26 Javascript
javascript轮播图算法
2016/10/21 Javascript
Vue.js表单控件实践
2016/10/27 Javascript
js编写的treeview使用方法
2016/11/11 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
jQuery实现简单日期格式化功能示例
2017/09/19 jQuery
从vue基础开始创建一个简单的增删改查的实例代码(推荐)
2018/02/11 Javascript
JavaScript如何对图片进行黑白化
2018/04/10 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
JS通用方法触发点击事件代码实例
2020/02/17 Javascript
[01:00:26]Ti4主赛事胜者组第一天 EG vs NEWBEE 1
2014/07/19 DOTA
[39:02]DOTA2亚洲邀请赛 3.31 小组赛 B组 Mineski vs VGJ.T
2018/04/01 DOTA
python中List的sort方法指南
2014/09/01 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
2020/11/11 Python
python 实现Requests发送带cookies的请求
2021/02/08 Python
全面总结使用CSS实现水平垂直居中效果的方法
2016/03/10 HTML / CSS
利用canvas实现图片下载功能来实现浏览器兼容问题
2019/05/31 HTML / CSS
英国最大的在线蜡烛商店:Candles Direct
2019/03/26 全球购物
会议活动邀请函
2014/01/27 职场文书
生日寄语大全
2014/04/08 职场文书
广告学专业求职信
2014/06/19 职场文书
出差报告格式模板
2014/11/06 职场文书
对PyTorch中inplace字段的全面理解
2021/05/22 Python
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python
MySQL中int (10) 和 int (11) 的区别
2022/01/22 MySQL