在开发网页时,我们经常需要通过JS获取元素的class名称进行一些操作,比如样式修改、动画效果实现等。本文将介绍JS如何获取元素的class名称及其应用。
获取元素的class名称有两种方式:通过原生JS和通过Jquery。
直接使用 element.className 可以获取元素的class名称,但是它只能获取到元素的class名称串,如果想要获取到多个class名称,并且它们之间存在空格,则需要使用 element.classList 。
element.classList 是一个 DOMTokenList 对象,包含了当前元素的所有类名,我们可以通过它提供的方法 add()、remove()、toggle() 来添加、删除、切换类名。
示例代码:
// 获取元素的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');
可以通过 Jquery 提供的 .attr() 方法来获取 class 属性的值,也可以使用 .addClass()、.removeClass()、.toggleClass() 等方法来添加、删除、切换类名。
示例代码:
// 获取元素的class名称
var element = $('.qipa250');
// 获取当前元素的类名
console.log(element.attr('class'));
// 添加类名
element.addClass('new-class');
// 删除类名
element.removeClass('test');
// 切换类名
element.toggleClass('new-class');
// 获取元素的class名称
var element = document.querySelector('.qipa250');
// 添加类名,改变样式
element.classList.add('new-class');
element.style.color = '#ff0000';
// 切换类名,切换样式
element.classList.toggle('new-class');
element.classList.toggle('test');
// 获取元素的class名称
var element = document.querySelector('.qipa250');
// 添加类名,实现动画效果
element.classList.add('animated', 'bounce');
// 5秒后删除类名,取消动画效果
setTimeout(function(){
element.classList.remove('animated', 'bounce');
}, 5000);