原生JavaScript来实现对dom元素class的操作方法(推荐)


Posted in Javascript onAugust 16, 2017

jQuery操作class的方式非常强大

写了一个利用原生js来实现对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>

以上就是小编为大家整理的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家继续支持三水点靠木~~

Javascript 相关文章推荐
Mootools 1.2教程 滑动效果(Slide)
Sep 15 Javascript
仿谷歌主页js动画效果实现代码
Jul 14 Javascript
node.js中的fs.lchmodSync方法使用说明
Dec 16 Javascript
jQuery实现hover合成事件的方法
Aug 06 Javascript
13个PHP函数超实用
Oct 21 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
Nov 22 Javascript
详解Angular 4 表单快速入门
Jun 05 Javascript
vue.js全局API之nextTick全面解析
Jul 07 Javascript
vue生成文件本地打开查看效果的实例
Sep 06 Javascript
vue实现简单的星级评分组件源码
Nov 16 Javascript
eslint+prettier统一代码风格的实现方法
Jul 22 Javascript
javascript前端和后台进行数据交互方法示例
Aug 07 Javascript
React Native 集成jpush-react-native的示例代码
Aug 16 #Javascript
jQuery实现全选、反选和不选功能
Aug 16 #jQuery
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
Aug 16 #Javascript
微信小程序删除处理详解
Aug 16 #Javascript
微信小程序实现倒计时60s获取验证码
Apr 17 #Javascript
微信小程序实现根据字母选择城市功能
Aug 16 #Javascript
前端跨域的几种解决方式总结(推荐)
Aug 16 #Javascript
You might like
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
php中OR与|| AND与&amp;&amp;的区别总结
2013/10/26 PHP
教你如何使用php session
2013/10/28 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
Laravel实现ORM带条件搜索分页
2019/10/24 PHP
jQuery 开天辟地入门篇一
2009/12/09 Javascript
jQuery 1.7.2中getAll方法的疑惑分析
2012/05/23 Javascript
javascript获取网页宽高方法汇总
2015/07/19 Javascript
javascript html5摇一摇功能的实现
2016/04/19 Javascript
Highcharts入门之基本属性
2016/08/02 Javascript
移动端web滚动分页的实现方法
2017/05/05 Javascript
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
VSCode 配置uni-app的方法
2020/07/11 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
[56:41]iG vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/17 DOTA
详解Python中的Descriptor描述符类
2016/06/14 Python
python中import学习备忘笔记
2017/01/24 Python
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
Python3多线程基础知识点
2019/02/19 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统
2019/09/25 Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
2020/03/01 Python
python如何将图片转换素描画
2020/09/08 Python
Python使用内置函数setattr设置对象的属性值
2020/10/16 Python
用python写PDF转换器的实现
2020/10/29 Python
原装进口全世界:天猫国际
2016/08/03 全球购物
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
Airbnb爱彼迎官网:成为爱彼迎房东,赚取收入
2019/03/14 全球购物
银行毕业实习自我鉴定
2013/09/19 职场文书
中学校庆方案
2014/03/17 职场文书
2014年超市工作总结
2014/11/19 职场文书
2015年教研工作总结
2015/05/23 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
世界文化遗产导游词
2019/08/07 职场文书
Python if else条件语句形式详解
2022/03/24 Python