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 Tips(4) 一些关于提高JQuery性能的Tips
Dec 19 Javascript
javascript整除实现代码
Nov 23 Javascript
JS 实现导航栏悬停效果(续)
Sep 24 Javascript
嵌入式iframe子页面与父页面js通信的方法
Jan 20 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
Aug 25 Javascript
javascript跨域总结之window.name实现的跨域数据传输
Nov 01 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
May 17 Javascript
BootStrapTable服务器分页实例解析
Dec 20 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
Oct 24 Javascript
JS实现根据详细地址获取经纬度功能示例
Apr 16 Javascript
Vue项目打包部署到iis服务器的配置方法
Oct 14 Javascript
Vue 数据响应式相关总结
Jan 28 Vue.js
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
DC《神奇女侠2》因疫情推迟上映 温子仁新恐怖片《恶性》撤档
2020/04/09 欧美动漫
php判断上传的Excel文件中是否有图片及PHPExcel库认识
2013/01/11 PHP
php获取本地图片文件并生成xml文件输出具体思路
2013/04/27 PHP
基于empty函数的输出详解
2013/06/17 PHP
php通过排列组合实现1到9数字相加都等于20的方法
2015/08/03 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
js实现收缩菜单效果实例代码
2013/10/30 Javascript
阻止事件(取消浏览器对事件的默认行为并阻止其传播)
2013/11/03 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
深入解析JavaScript中的立即执行函数
2016/05/21 Javascript
基于Angular.js实现的触摸滑动动画实例代码
2017/02/19 Javascript
Vue 2.x教程之基础API
2017/03/06 Javascript
canvas绘制爱心的几种方法总结(推荐)
2017/10/31 Javascript
node前端开发模板引擎Jade的入门
2018/05/11 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
[17:00]DOTA2 HEROS教学视频教你分分钟做大人-帕克
2014/06/10 DOTA
[04:40]DOTA2-DPC中国联赛1月26日Recap集锦
2021/03/11 DOTA
Python实现购物车程序
2018/04/16 Python
PyQt5实现下载进度条效果
2018/04/19 Python
基于Python List的赋值方法
2018/06/23 Python
django解决订单并发问题【推荐】
2019/07/31 Python
pytorch::Dataloader中的迭代器和生成器应用详解
2020/01/03 Python
Django实现列表页商品数据返回教程
2020/04/03 Python
pycharm 实现光标快速移动到括号外或行尾的操作
2021/02/05 Python
5个HTML5的常用本地存储方式详解与介绍
2021/03/27 HTML / CSS
公司新员工的演讲稿注意事项
2014/01/01 职场文书
职业生涯规划书怎么写?
2014/09/14 职场文书
2014入党积极分子批评与自我批评思想汇报
2014/09/20 职场文书
2014年质量工作总结
2014/11/22 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
国庆节主题班会
2015/08/15 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python