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

 更新时间:2022年01月24日 13:15:35   作者:快乐编程  
这篇文章主要给大家分享的是JavaScript用html5新方法操作元素类名的详解,早先JavaScript处理起来特别不方便,需要先取到class属性,然后对字符串进行处理。现在html5给所有元素增加了classList属性来操作类属性,非常方便,下面就一起来看看具体操作过程吧

早先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属性类型:

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新方法操作元素类名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • wasm+js实现文件获取md5示例详解

    wasm+js实现文件获取md5示例详解

    这篇文章主要为大家介绍了wasm+js实现md5文件获取示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • JS实现可恢复的文件上传示例详解

    JS实现可恢复的文件上传示例详解

    这篇文章主要为大家介绍了JS实现可恢复的文件上传示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • 利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)

    利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)

    这篇文章主要介绍了用HTML+CSS+JS做出简单的TODOLIST(记事本)项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-04-04
  • 微信小程序 数据交互与渲染实例详解

    微信小程序 数据交互与渲染实例详解

    这篇文章主要介绍了微信小程序 数据交互与渲染实例详解的相关资料,需要的朋友可以参考下
    2017-01-01
  • JavaScript数组去重方案

    JavaScript数组去重方案

    这篇文章主要介绍了JS数组方案,先总结一下我们数组的方法:pop、push、shift、unshift、slice、splice、sort、reverse、concat、join、indexOf、lastIndexOf、map、forEach,下面文章将详细对他们做个详细介绍,需要的朋友可以参考一下
    2021-09-09
  • TypeScript5.2引入新关键字using介绍

    TypeScript5.2引入新关键字using介绍

    这篇文章主要介绍了TypeScript5.2引入新关键字using使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 前端算法题解 leetcode50-Pow(x, n)

    前端算法题解 leetcode50-Pow(x, n)

    这篇文章主要为大家介绍了前端算法题解 leetcode50-Pow(x, n)示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 解析Clipboard API剪贴板操作实例

    解析Clipboard API剪贴板操作实例

    这篇文章主要为大家介绍了解析Clipboard API剪贴板操作实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • C#微信小程序服务端获取用户解密信息实例代码

    C#微信小程序服务端获取用户解密信息实例代码

    这篇文章主要介绍了 C#微信小程序服务端获取用户解密信息实例代码的相关资料,需要的朋友可以参考下
    2017-03-03
  • 微信小程序页面开发注意事项整理

    微信小程序页面开发注意事项整理

    这篇文章主要介绍了微信小程序页面开发注意事项整理的相关资料,需要的朋友可以参考下
    2017-05-05

最新评论