首页 > 编程 > JavaScript > 正文

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

2019-11-20 23:01:14
字体:
来源:转载
供稿:网友
复制代码 代码如下:

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|$)"))," ");
};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表