学习使用js/jquery获取指定class名称的三种方式

学习使用js/jquery获取指定class名称的三种方式

简介

在开发网页时,我们经常需要通过JS获取元素的class名称进行一些操作,比如样式修改、动画效果实现等。本文将介绍JS如何获取元素的class名称及其应用。

一、获取元素的class名称

获取元素的class名称有两种方式:通过原生JS和通过Jquery。

1、通过原生JS获取元素的class名称

直接使用 element.className 可以获取元素的class名称,但是它只能获取到元素的class名称串,如果想要获取到多个class名称,并且它们之间存在空格,则需要使用 element.classList 。

element.classList 是一个 DOMTokenList 对象,包含了当前元素的所有类名,我们可以通过它提供的方法 add()、remove()、toggle() 来添加、删除、切换类名。

示例代码:

javascript 复制代码
// 获取元素的class名称

var element = document.querySelector('.qipa250');

// 获取当前元素的类名

console.log(element.className);

// 使用classList获取所有类名

console.log(element.classList);

// 添加类名

element.classList.add('new-class');

// 删除类名

element.classList.remove('qipa250');

// 切换类名

element.classList.toggle('new-class');

2、通过Jquery获取元素的class名称

可以通过 Jquery 提供的 .attr() 方法来获取 class 属性的值,也可以使用 .addClass()、.removeClass()、.toggleClass() 等方法来添加、删除、切换类名。

示例代码:

javascript 复制代码
// 获取元素的class名称

var element = $('.qipa250');

// 获取当前元素的类名

console.log(element.attr('class'));

// 添加类名

element.addClass('new-class');

// 删除类名

element.removeClass('test');

// 切换类名

element.toggleClass('new-class');

二、应用

1、样式修改

javascript 复制代码
// 获取元素的class名称

var element = document.querySelector('.qipa250');

// 添加类名,改变样式

element.classList.add('new-class');

element.style.color = '#ff0000';

// 切换类名,切换样式

element.classList.toggle('new-class');

element.classList.toggle('test');

2、动画效果实现

javascript 复制代码
// 获取元素的class名称

var element = document.querySelector('.qipa250');

// 添加类名,实现动画效果

element.classList.add('animated', 'bounce');

// 5秒后删除类名,取消动画效果

setTimeout(function(){

element.classList.remove('animated', 'bounce');

}, 5000);
相关推荐
YM52e3 小时前
鸿蒙Flutter Padding内边距:EdgeInsets详解
android·学习·flutter·华为·harmonyos·鸿蒙
西安老张(AIGC&ComfyUI)5 小时前
第034章:ComfyUI&AIGC一阶段学习总结及下阶段学习安排
学习·aigc
mayaairi6 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC6 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
正经人_x8 小时前
学习日记43:FINO
学习
海上彼尚9 小时前
Nodejs也能写Agent - 22.LangGraph篇 - 上下文工程
前端·javascript·人工智能·langchain·node.js
网络工程小王10 小时前
【HCIE-AI】11.模型 昇腾迁移适配-精度调试-性能调优
人工智能·学习·华为·迁移学习·昇腾
默_笙10 小时前
🎉 AI 项目里为什么需要 BFF?因为我实在不想在前端处理二进制流
前端·javascript
一只小菜鸡..10 小时前
CMU 15-213 CSAPP:机器级编程与内存的暗黑魔法(Machine-Level)
笔记·学习
xyphf_和派孔明12 小时前
企业级微前端项目完整创建步骤,第三步:配置 Vue 子应用
前端·javascript