添加删除元素的className

添加还好弄一些,删除就麻烦了。

添加的思路是,获取当前元素的className,如果当前元素的className是空的话,直接把新className给他就行了,如果不是,就加个空白,添加到当前className的后面。

删除好麻烦,要获取当前元素的className,如果当前的className不是空的话,就用空格把当前的className分割一下,转成数组,然后循环数组,如果数组中的某一项是要删除的内容,就在数组里删除这项,循环结束后,再把数组用空格连成字符串,这个字符串就是删除后的className了。

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>添加删除元素的className</title>
<style type="text/css">
    .box{ width:100px; height:100px; background:#C33;}
</style>

<script type="text/javascript">
window.onload=function(){
    var box=document.getElementById('box');
    addClassName(box,'aa');
    addClassName(box,'bb');
    addClassName(box,'cc');
    addClassName(box,'dd');
    
    delClassName(box, 'dd');
    delClassName(box, 'aa');
};

function addClassName(obj,className){
    if(obj.className==''){
        obj.className=className;    
    }else{
        obj.className+=' '+className;    
    }
}
    
function delClassName(obj,className){
    var currentClassName=obj.className;
    if(currentClassName!=''){
        var currentClassNameArray=currentClassName.split(' ');
        var i=0;
        for(i=0; i<currentClassNameArray.length; i++){
            if(currentClassNameArray[i]==className){
                currentClassNameArray.splice(i,1);
            }
        }
        var nowClassName=currentClassNameArray.join(' ');
        obj.className=nowClassName;
    }
}
</script>
</head>

<body>

<div class="box" id="box"></div>
</body>
</html>

转载于:https://www.cnblogs.com/homework/archive/2012/04/17/2453686.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值