js判断样式className同时增加class或删除class


Posted in Javascript onJanuary 30, 2013
function MyClass () {} 
MyClass.hasClassName = function(element, className) 
{ 
if (!element) return; 
var elementClassName = element.className; 
if (elementClassName.length == 0) return false; 
//用正则表达式判断多个class之间是否存在真正的class(前后空格的处理) 
if (elementClassName == className || elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) 
return true; 
return false; 
}; 
MyClass.addClassName = function(element, className) 
{ 
if (!element) return; 
var elementClassName = element.className; 
if (elementClassName.length == 0) 
{ 
element.className = elementClassName; 
return; 
} 
if (elementClassName == className || elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) 
return; 
element.className = elementClassName + " " + className; 
}; 
MyClass.removeClassName = function(element, className) 
{ 
if (!element) return; 
var elementClassName = element.className; 
if (elementClassName.length == 0) return; 
if(elementClassName == className) 
{ 
element.className = ""; 
return; 
} 
if (elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) 
element.className = elementClassName.replace((new RegExp("(^|\\s)" + className + "(\\s|$)"))," "); 
};
Javascript 相关文章推荐
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
Aug 27 Javascript
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
Jun 28 Javascript
jquery中get和post的简单实例
Feb 04 Javascript
jQuery弹出下拉列表插件(实现kindeditor的@功能)
Aug 16 Javascript
JavaScript中的call和apply的用途以及区别
Jan 11 Javascript
js禁止浏览器的回退事件
Apr 20 Javascript
详解vue服务端渲染(SSR)初探
Jun 19 Javascript
react+redux的升级版todoList的实现
Dec 18 Javascript
在Vue项目中引入腾讯验证码服务的教程
Apr 03 Javascript
JS复杂判断的更优雅写法代码详解
Nov 07 Javascript
使用Node.js实现一个多人游戏服务器引擎
Mar 13 Javascript
基于Element的组件改造的树形选择器(树形下拉框)
Feb 27 Javascript
编写针对IE的JS代码两种编写方法
Jan 30 #Javascript
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
Jan 29 #Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
Jan 29 #Javascript
JavaScript起点(严格模式深度了解)
Jan 28 #Javascript
一个页面元素appendchild追加到另一个页面元素的问题
Jan 27 #Javascript
JavaScript转换农历类实现及调用方法
Jan 27 #Javascript
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
Jan 27 #Javascript
You might like
星际争霸兵种名称对照表
2020/03/04 星际争霸
mayfish 数据入库验证代码
2010/04/30 PHP
搭建基于Docker的PHP开发环境的详细教程
2015/07/01 PHP
thinkPHP下ueditor的使用方法详解
2015/12/26 PHP
PHP实现微信提现(企业付款到零钱)
2019/08/01 PHP
基于jquery跨浏览器显示的file上传控件
2011/10/24 Javascript
javascript针对DOM的应用分析(四)
2012/04/15 Javascript
JavaScript检查子字符串是否在字符串中的方法
2016/02/03 Javascript
Angularjs material 实现搜索框功能
2016/03/08 Javascript
设计模式中的facade外观模式在JavaScript开发中的运用
2016/05/18 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
JS实现的几个常用算法
2016/11/12 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
200行代码实现blockchain 区块链实例详解
2018/03/14 Javascript
vue-cli脚手架的安装教程图解
2018/09/02 Javascript
如何使用jQuery操作Cookies方法解析
2020/09/08 jQuery
基于vue实现微博三方登录流程解析
2020/11/04 Javascript
python读写二进制文件的方法
2015/05/09 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
Python根据成绩分析系统浅析
2019/02/11 Python
Python绘制堆叠柱状图的实例
2019/07/09 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
Python 解析xml文件的示例
2020/09/29 Python
欧舒丹加拿大官网:L’Occitane加拿大
2017/10/29 全球购物
英国优质鞋类专家:Robinson’s Shoes
2017/12/08 全球购物
美国最大最全的亚洲购物网站:美国亚米网(Yamibuy)
2020/05/05 全球购物
strstr()的简单实现
2013/09/26 面试题
Java里面Pass by value和Pass by Reference是什么意思
2016/05/02 面试题
通信工程专业个人找工作求职信范文
2013/09/21 职场文书
搞笑创意广告语
2014/03/17 职场文书
经济信息系毕业生自荐信
2014/06/02 职场文书
安全教育的主题班会
2015/08/13 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书
星际争霸:毕姥爷vs解冻03
2022/04/01 星际争霸
详解Flutter和Dart取消Future的三种方法
2022/04/07 Java/Android