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 相关文章推荐
深入分析jquery解析json数据
Dec 09 Javascript
javascript实现简单的贪吃蛇游戏
Mar 31 Javascript
JavaScript的removeChild()函数用法详解
Dec 27 Javascript
基于javascript html5实现3D翻书特效
Mar 14 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
Jun 01 Javascript
jQuery过滤选择器用法示例
Sep 12 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
Dec 14 Javascript
Javascript中的prototype与继承
Feb 06 Javascript
vue.js中mint-ui框架的使用方法
May 12 Javascript
微信小程序之侧边栏滑动实现过程解析(附完整源码)
Aug 23 Javascript
js判断非127开头的IP地址的实例代码
Jan 05 Javascript
Node.js API详解之 net模块实例分析
May 18 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
phpMyAdmin 安装教程全攻略
2007/03/19 PHP
PHP开发中四种查询返回结果分析
2011/01/02 PHP
ThinkPHP模板判断输出Defined标签用法详解
2014/06/30 PHP
php跨服务器访问方法小结
2015/05/12 PHP
Yii框架Session与Cookie使用方法示例
2019/10/14 PHP
javascript function调用时的参数检测常用办法
2010/02/26 Javascript
jQuery中绑定事件的命名空间详解
2011/04/05 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
jQuery实现带分组数据的Table表头排序实例分析
2015/11/24 Javascript
AngularJS使用指令增强标准表单元素功能
2016/07/01 Javascript
用JavaScript和jQuery实现瀑布流
2017/03/19 Javascript
详解如何在react中搭建d3力导向图
2018/01/12 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
angular 数据绑定之[]和{{}}的区别
2018/09/25 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
el-select 下拉框多选实现全选的实现
2019/08/02 Javascript
js中Function引用类型常见有用的方法和属性详解
2019/12/11 Javascript
[43:48]Ti4正赛第一天 VG vs NEWBEE 2
2014/07/19 DOTA
python搭建微信公众平台
2016/02/09 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
Python SQL查询并生成json文件操作示例
2018/08/17 Python
Python 忽略warning的输出方法
2018/10/18 Python
python bmp转换为jpg 并删除原图的方法
2018/10/25 Python
基于numpy中数组元素的切片复制方法
2018/11/15 Python
python 使用socket传输图片视频等文件的实现方式
2019/08/07 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
雅诗兰黛美国官网:Estee Lauder美国
2016/07/21 全球购物
深深扎根运动世界的生活品牌:Tillys
2017/10/30 全球购物
美国按摩椅批发网站:Titan Chair
2018/12/27 全球购物
财务分析个人的自荐书范文
2013/11/24 职场文书
知名企业招聘广告词大全
2014/03/18 职场文书
材料员岗位职责
2015/02/10 职场文书
送达通知书
2015/04/25 职场文书
2015年机关作风和效能建设工作总结
2015/07/23 职场文书
MySQL视图概念以及相关应用
2022/04/19 MySQL