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 相关文章推荐
JS 分号引起的一段调试问题
Jun 18 Javascript
ko knockoutjs动态属性绑定技巧应用
Nov 14 Javascript
javascript setTimeout和setInterval计时的区别详解
Jun 21 Javascript
快速解决jQuery与其他库冲突的方法介绍
Jan 02 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
Sep 29 Javascript
JavaScript实现Fly Bird小游戏
Dec 15 Javascript
基于jquery二维码生成插件qrcode
Jan 07 Javascript
js中new一个对象的过程
Feb 20 Javascript
详解如何使用webpack打包Vue工程
May 27 Javascript
jQuery查找和过滤_动力节点节点Java学院整理
Jul 04 jQuery
react-native android状态栏的实现
Jun 15 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
用PHP连接MySQL代码的参数说明
2008/06/07 PHP
PHP自定义函数收代码
2010/08/01 PHP
php计划任务之ignore_user_abort函数实现方法
2015/01/08 PHP
php is_writable判断文件是否可写实例代码
2016/10/13 PHP
静态页面下用javascript操作ACCESS数据库(读增改删)的代码
2007/05/14 Javascript
js中复制行和删除行的操作实例
2013/06/25 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
JSON 的正确用法探讨:Pyhong、MongoDB、JavaScript与Ajax
2016/05/15 Javascript
解析利用javascript如何判断一个数为素数
2016/12/08 Javascript
JavaScript 中Date对象的格式化代码方法汇总
2017/09/06 Javascript
利用jqprint插件打印页面内容的实现方法
2018/01/09 Javascript
详解Vue源码学习之callHook钩子函数
2018/07/25 Javascript
微信小程序下拉框组件使用方法详解
2018/12/28 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
2019/07/29 Javascript
解决Ant Design Modal内嵌Form表单initialValue值不动态更新问题
2020/10/29 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
[15:20]DOTA2-DPC中国联赛 正赛 Elephant vs Aster 选手采访
2021/03/11 DOTA
Python时间获取及转换知识汇总
2017/01/11 Python
Scrapy爬虫实例讲解_校花网
2017/10/23 Python
在mac下查找python包存放路径site-packages的实现方法
2018/11/06 Python
对PyQt5中的菜单栏和工具栏实例详解
2019/06/20 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
python 消费 kafka 数据教程
2019/12/21 Python
tensorflow 环境变量设置方式
2020/02/06 Python
Python fileinput模块如何逐行读取多个文件
2020/10/05 Python
迪斯尼商品官方网站:ShopDisney
2016/08/01 全球购物
Club Monaco加拿大官网:设计师男女服装
2019/09/29 全球购物
护士求职推荐信范文
2013/11/23 职场文书
期末自我鉴定
2014/02/02 职场文书
人事科岗位职责范本
2014/03/02 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
大学生工作求职信
2014/06/23 职场文书
委托函范文
2015/01/29 职场文书
大学生个人简历自我评价
2015/03/11 职场文书
毕业设计论文致谢词
2015/05/14 职场文书
MYSQL如何查看操作日志详解
2022/05/30 MySQL