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 相关文章推荐
基于逻辑运算的简单权限系统(实现) JS 版
Mar 24 Javascript
扩展jquery实现客户端表格的分页、排序功能代码
Mar 16 Javascript
JQuery扩展插件Validate 3通过参数设置错误信息
Sep 05 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
May 02 Javascript
JQuery控制div外点击隐藏而div内点击不会隐藏的方法
Jan 13 Javascript
Javascript中判断一个值是否为undefined的方法详解
Sep 28 Javascript
Vue组件化通讯的实例代码
Jun 23 Javascript
简单快速的实现js计算器功能
Aug 17 Javascript
weui中的picker使用js进行动态绑定数据问题
Nov 06 Javascript
js正则匹配多个全部数据问题
Dec 20 Javascript
vue 实现在同一界面实现组件的动态添加和删除功能
Jun 16 Javascript
Vue过滤器,生命周期函数和vue-resource简单介绍
Jan 12 Vue.js
一文了解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
Protoss魔法科技
2020/03/14 星际争霸
PHP和XSS跨站攻击的防范
2007/04/17 PHP
PHP执行速率优化技巧小结
2008/03/15 PHP
PHP 数据结构 算法描述 冒泡排序 bubble sort
2011/07/10 PHP
初品cakephp 入门基础
2012/02/16 PHP
php读取纯真ip数据库使用示例
2014/01/26 PHP
PHP中的替代语法简介
2014/08/22 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
js 学习笔记(三)
2009/12/29 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
JavaScript学习笔记之JS事件对象
2015/01/22 Javascript
JS+CSS实现带关闭按钮DIV弹出窗口的方法
2015/02/27 Javascript
最简单的tab切换实例代码
2016/05/13 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
jQuery中ScrollTo用法示例
2016/09/04 Javascript
利用js获取下拉框中所选的值
2016/12/01 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
2018/01/10 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
2018/01/17 Javascript
javascript实现扫雷简易版
2020/08/18 Javascript
react ant Design手动设置表单的值操作
2020/10/31 Javascript
vue使用exif获取图片经纬度的示例代码
2020/12/11 Vue.js
python通过Windows下远程控制Linux系统
2018/06/20 Python
python使用phoenixdb操作hbase的方法示例
2019/02/28 Python
Python读取xlsx文件的实现方法
2019/07/04 Python
在Django model中设置多个字段联合唯一约束的实例
2019/07/17 Python
pytorch实现对输入超过三通道的数据进行训练
2020/01/15 Python
django rest framework使用django-filter用法
2020/07/15 Python
python爬虫用mongodb的理由
2020/07/28 Python
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
海蓝之谜英国官网:La Mer英国
2020/01/15 全球购物
法学专业本科生自荐信范文
2013/12/17 职场文书
自主招生英文自荐信
2015/03/25 职场文书
详解Java七大阻塞队列之SynchronousQueue
2021/09/04 Java/Android