javaScript给元素添加多个class的简单实现


Posted in Javascript onJuly 20, 2016

javaScript给元素添加多个class的简单实现

<html>
<head>



<style type="text/css">




.div2{




font-size:16px; 




color:orange;




}




.div3{




font-size:20px;




color:blue;




}



<style>



<script type="text/javascript">




[1]直接把样式赋值给className




var odiv=document.getElementById('div1');




odiv.className= div3




//这样我们会得到 class ="div3" 会直接把div2样式给覆盖掉;




[2]使用累加赋值给className




var odiv=document.getElementById('div1');




odiv.className+=" "+div3  
//样式和样式之间需要空隙 ,所以加个空字符串隔开




//这样可以得到 class="div2 div3" 可以正常增加,但是我们在添加样式的时候我们得考虑下他本身之前有没有同名的样式,如果有我们添加的话就会变成累赘 比如class="div2 div3 div3";




[3]检测样式原先之前是否有相同的样式




var odiv=document.getElementById('div1'); 




function hasClass(element,csName){





element.className.match(RegExp('(\\s|^)'+csName+'(\\s|$)')); //使用正则检测是否有相同的样式

 



}





[4]在[3]的基础上我们就可以进行判断性给元素添加样式了

 




var odiv=document.getElementById('div1'); 




function hasClass(element,csName){




 return  element.className.match(RegExp('(\\s|^)'+csName+'(\\s|$)')); //使用正则检测是否有相同的样式



} 




function addClass(element,csName){




 if(!hasClass(element,csName)){





 element.className+=' '+csName;




}



addClass(odiv,'div3');



//这样就可以灵活给元素添加样式了;



【元素删除指定样式】


//同样先进行判断,在进行删除






 var odiv=document.getElementById('div1'); 



 function hasClass(element,csName){




 return  element.className.match(RegExp('(\\s|^)'+csName+'(\\s|$)')); //使用正则检测是否有相同的样式



} 



 function deleteClass(element,csName){




 if(!hasClass(element,csName)){





 element.className.replace(RegExp('(\\s|^)'+csName+'(\\s|$)'),' ');  //利用正则捕获到要删除的样式的名称,然后把他替换成一个空白字符串,就相当于删除了



 }


 deleteClass(odiv,div3);
 


}



</script>


</head>


<body>



<div id="div1" class='div2'> 测试</div>


</body>

</html>

以上这篇javaScript给元素添加多个class的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 异步页面查询实现代码(asp.net)
May 26 Javascript
JS控件的生命周期介绍
Oct 22 Javascript
浅谈Jquery为元素绑定事件
Apr 27 Javascript
基于jQuery实现简单的折叠菜单效果
Nov 23 Javascript
jQuery on()绑定动态元素出现的问题小结
Feb 19 Javascript
简单讲解jQuery中的子元素过滤选择器
Apr 18 Javascript
JavaScript知识点总结(十)之this关键字
May 31 Javascript
判断颜色是否合法的正则表达式(详解)
May 03 Javascript
vue中使用refs定位dom出现undefined的解决方法
Dec 21 Javascript
详解jQuery中的prop()使用方法
Jan 05 jQuery
element-ui点击查看大图的方法示例
Dec 14 Javascript
使用Canvas绘制一个游戏人物属性图
Mar 25 Javascript
JavaScript中数组的22种方法必学(推荐)
Jul 20 #Javascript
JavaScript DOM 对象深入了解
Jul 20 #Javascript
JavaScript中的splice方法用法详解
Jul 20 #Javascript
Bootstrap被封装的弹层
Jul 20 #Javascript
必备的JS调试技巧汇总
Jul 20 #Javascript
JavaScript的==运算详解
Jul 20 #Javascript
javascript特效实现——当前时间和倒计时效果的简单实例
Jul 20 #Javascript
You might like
Php图像处理类代码分享
2012/01/19 PHP
使用迭代器 遍历文件信息的详解
2013/06/08 PHP
Linux下安装oracle客户端并配置php5.3
2014/10/12 PHP
ThinkPHP实现图片上传操作的方法详解
2017/05/08 PHP
Javascript var变量隐式声明方法
2009/10/19 Javascript
精通Javascript系列之Javascript基础篇
2011/06/07 Javascript
兼容最新firefox、chrome和IE的javascript图片预览实现代码
2014/08/08 Javascript
使用JS画图之点、线、面
2015/01/12 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
Angular的自定义指令以及实例
2016/12/26 Javascript
简单谈谈gulp-changed插件
2017/02/21 Javascript
JS 调试中常见的报错问题解决方法
2017/05/20 Javascript
Angular2 父子组件数据通信实例
2017/06/22 Javascript
JavaScript函数中的this四种绑定形式
2017/08/15 Javascript
vue实现图片滚动的示例代码(类似走马灯效果)
2018/03/03 Javascript
Angular设置别名alias的方法
2018/11/08 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
js实现批量删除功能
2020/08/27 Javascript
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
2015/05/20 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
Python装饰器模式定义与用法分析
2018/08/06 Python
django模板加载静态文件的方法步骤
2019/03/01 Python
详解如何减少python内存的消耗
2019/08/09 Python
Python 自动登录淘宝并保存登录信息的方法
2019/09/04 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
2019/10/11 Python
python3.8.1+selenium实现登录滑块验证功能
2020/05/22 Python
Opencv求取连通区域重心实例
2020/06/04 Python
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
怎样创建、运行java程序
2014/08/01 面试题
党组织领导班子整改方案
2014/10/25 职场文书
房产公证书格式
2015/01/26 职场文书
护士医德考评自我评价
2015/03/03 职场文书
恰同学少年观后感
2015/06/08 职场文书
深入理解 Golang 的字符串
2022/05/04 Golang