原生JavaScript实现DOM元素class操作详解
作者:页面旅途时间:2026-10-22 07:12:05浏览:544
本文介绍如何使用原生JavaScript实现DOM元素的class操作,包括addClass、removeClass、toggleClass和hasClass四个核心方法。通过正则表达式匹配类名,提供添加、删除、切换及判断类名存在的功能,并附带完整的测试代码示例,帮助开发者在不依赖jQuery的情况下进行类名管理。
原生JavaScript DOM类名操作方法
jQuery在处理类名方面功能十分强大。
本文编写了一套基于原生JavaScript的DOM元素class操作方法。
主要包含四个功能:1. addClass:为指定的DOM元素添加样式类;2. removeClass:移除指定DOM元素的样式类;3. toggleClass:若样式类存在则删除,不存在则添加;4. hasClass:检测样式类是否存在。
以下提供toggleClass功能的测试示例。
[html] view plain copy
<style type="text/css">
div.testClass{
background-color:gray;
}
</style>
<script type="text/javascript">
function hasClass(obj, cls) {
return obj.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'));
}
function addClass(obj, cls) {
if (!this.hasClass(obj, cls)) obj.className += " " + cls;
}
function removeClass(obj, cls) {
if (hasClass(obj, cls)) {
var reg = new RegExp('(\\s|^)' + cls + '(\\s|$)');
obj.className = obj.className.replace(reg, ' ');
}
}
function toggleClass(obj,cls){
if(hasClass(obj,cls)){
removeClass(obj, cls);
}else{
addClass(obj, cls);
}
}
function toggleClassTest(){
var obj = document. getElementById('test');
toggleClass(obj,"testClass");
}
</script>
<body>
<div id = "test" style = "width:250px;height:100px;">
sssssssssssss
</div>
<input type = "button" value = "toggleClassTest" onclick = "toggleClassTest();" />
</body>
以上内容为本文总结,希望这些方法能对您的学习或工作有所帮助,感谢支持。
作者最新文章
JS监听滚动事件:回到顶部按钮的显示与隐藏逻辑
2026-11-05 16:19:37
JavaScript怎么读写LocalStorage与SessionStorage
2026-11-05 15:40:11
anime.js 与 GSAP 对比:轻量级项目该怎么选择动画库
2026-11-05 11:24:55
flv.js 与 hls.js 在直播场景下的选型对比
2026-11-05 08:18:52
JavaScript能做什么?前端开发中的作用与应用场景解析
2026-11-04 23:17:54
