编程点滴

FOR WEB WINFORM DEVELOP!!

导航

JS实现Jquery的addClass,removeClass,changeClass,toggleClass

Posted on 2011-01-06 18:09  grayboy  阅读(4139)  评论(0编辑  收藏  举报

function hasClass(ele,cls) {
return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
function addClass(ele,cls) {
if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}
function removeClass(ele,cls) {
if (hasClass(ele,cls)) {
var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
ele.className
=ele.className.replace(reg,' ');
}
}
function toggleClass(ele,cls) {
if(hasClass(ele,cls)){
removeClass(ele,cls);
}
else
addClass(ele,cls);
}
function changeClass(ele,oldcls,newcls) {
if (!hasClass(ele,newcls)) {
if(hasClass(ele,oldcls)){
removeClass(ele,oldcls);
}
addClass(ele,newcls);
}
}