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 相关文章推荐
采用CSS和JS,刚好我最近有个站点要用到下拉菜单!
Jun 26 Javascript
JavaScript 动态生成方法的例子
Jul 22 Javascript
Javascript学习笔记4 Eval函数
Jan 11 Javascript
仿谷歌主页js动画效果实现代码
Jul 14 Javascript
AngularJS入门教程之Select(选择框)详解
Jul 27 Javascript
微信小程序 仿猫眼实现实例代码
Mar 14 Javascript
Vue.js鼠标悬浮更换图片功能
May 17 Javascript
jQuery初级教程之网站品牌列表效果
Aug 02 jQuery
vue-cli中的babel配置文件.babelrc实例详解
Feb 22 Javascript
微信小程序滑动选择器的实现代码
Aug 10 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
May 30 Javascript
微信小程序swiper使用网络图片不显示问题解决
Dec 13 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小偷相关截取函数备忘
2010/11/28 PHP
PHP编程中的__clone()方法使用详解
2015/11/27 PHP
php的RSA加密解密算法原理与用法分析
2020/01/23 PHP
28个JS验证函数收集
2010/03/02 Javascript
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
jQuery mobile类库使用时加载导航历史的方法简介
2015/12/04 Javascript
jQuery中inArray方法注意事项分析
2016/01/25 Javascript
基于socket.io+express实现多房间聊天
2016/03/17 Javascript
Jquery Easyui搜索框组件SearchBox使用详解(19)
2016/12/17 Javascript
vue-axios使用详解
2017/05/10 Javascript
基于node.js的fs核心模块读写文件操作(实例讲解)
2017/09/10 Javascript
React.Js添加与删除onScroll事件的方法详解
2017/11/03 Javascript
解决vue-router进行build无法正常显示路由页面的问题
2018/03/06 Javascript
详解iview的checkbox多选框全选时校验问题
2019/06/10 Javascript
微信小程序如何调用新闻接口实现列表循环
2019/07/02 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
2019/09/03 Javascript
node.js 如何监视文件变化
2020/09/01 Javascript
[03:06]V社市场总监Dota2项目负责人Erik专访:希望更多中国玩家加入DOTA2
2014/07/11 DOTA
[17:36]VG战队纪录片
2014/08/21 DOTA
python dict.get()和dict['key']的区别详解
2016/06/30 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
Python 多进程并发操作中进程池Pool的实例
2017/11/01 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
Python实现二维曲线拟合的方法
2018/12/29 Python
Python使用正则表达式分割字符串的实现方法
2019/07/16 Python
解决pycharm最左侧Tool Buttons显示不全的问题
2019/12/17 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
python 解决Fatal error in launcher:错误问题
2020/05/21 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
鲜花方阵解说词
2014/02/13 职场文书
2016年记者节感言
2015/12/08 职场文书
python爬取豆瓣电影TOP250数据
2021/05/23 Python
一劳永逸彻底解决pip install慢的办法
2021/05/24 Python
解决Redis启动警告问题
2022/02/24 Redis