js學習筆記20----addClass,removeClass函數封裝


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>addClassName , removeClassName</title>
    </head>
    <body>
        <div id="div1" class="bb">
            div1
        </div>
        <div id="div2" class="box dd bb">
            div2
        </div>
        <script type="text/javascript">
            var oDiv1 = document.getElementById("div1");
            var oDiv2 = document.getElementById("div2");
            addClass(oDiv1 , 'box');
            removeClass(oDiv2,'box');
            
            function addClass(obj,className){
                //如果原來沒有class
                if(obj.className == ""){
                    obj.className = className;
                }else{
                    var _index = classIndexOf(obj,className);
                    //如果原來沒有這個新加的class
                    if(_index == -1){
                        obj.className += " " + className;
                    }
                }
            }
            
            function removeClass(obj,className){
                //如果以前的元素不為空
                if(obj.className != ""){
                    var arrClassName = obj.className.split(" ");
                    var _index = classIndexOf(obj,className);
                    //如果存在要刪除的class
                    if(_index != -1){
                        arrClassName.splice(_index,1);
                    }
                    obj.className = arrClassName.join(" ");
                }
            }
            
            //檢驗是否包含有某一個class
            function classIndexOf(obj,v){
                var arrClassName = obj.className.split(" ");
                for(var i=0;i<arrClassName.length;i++){
                    if(arrClassName[i] == v){
                        return i;
                    }
                }
                return -1;
            }
        </script>
    </body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM