码迷,mamicode.com
首页 > 编程语言 > 详细

原生javascript添加和删除class

时间:2014-09-04 23:37:20      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   io   java   ar   div   cti   

在操作class时,往往需要叠加或者删除一个class,这里用原生javascript写了一种方法,以供参考。

这里是html代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DOM操作表格及样式</title>
<link rel="stylesheet" type="text/css" href="style.css"/>
<script type="text/javascript" src="demo.js"></script>
</head>
<body>
<div id="box" class="aaa bbb ccc">测试Div</div>
</body>
</html>

这里是非常简单的css代码,只为了测试

.aaa{
    font-size: 20px;
}
.bbb{
    color: green;
    font-size: 30px;
}
.ccc{font-weight: bold;}
.ddd{text-decoration: underline;}

最后这里是javascript代码,用了三个函数来实现

window.onload = function(){
    
    var box = document.getElementById(‘box‘);
    
    removeClass(box,‘aaa‘);
}
function hasClass(element,cName){        //检查class是否存在
    return !!element.className.match(new RegExp(‘(\\s|^)‘+cName+‘(\\s|$)‘));
}
function addClass(element,cName){        //添加一个class
    if(!hasClass(element,cName)){
        element.className +=‘ ‘+cName;
    }
}
function removeClass(element,cName){        //移除一个class
    if(hasClass(element,cName)){
        element.className = element.className.replace(new RegExp(‘(\\s|^)‘+cName+‘(\\s|$)‘),‘ ‘);
    }
}

 

原生javascript添加和删除class

标签:style   blog   http   color   io   java   ar   div   cti   

原文地址:http://www.cnblogs.com/littlefly/p/3957049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!