点击ducument隐藏div通用

function divHide(name,name1){
        "use strict";
        document.onclick = function(e){
            "use strict";
            var e = e||window.event;
            var en = e.srcElement||e.target;
            var chartName = name.charAt(0);
            switch (chartName){
                case '.':
                    var ele = document.querySelector(name);
                    break;
                case '#':
                    var ele = document.getElementById(name);
                    break;
                default :
                    var ele = document.getElementsByTagName(name);
            }
            while (en){
                if(en.className&&en.className ==name.replace('.','')||en.id&&en.id==name.replace('#','')){
                    return;
                }
                en = en.parentNode;
            }
            if(arguments.length==1){
                return ele.style.display ='none';
            }else if(arguments.length==2){
                for(var i = 0;i<ele.children;i++){
                    if(ele.children[i].className==name1){
                        ele.children[i].style.display ='none';
                    }
                }
            }
        };
    }divHide(name,name1);//name最外层元素、name1需要隐藏的name的子类元素.参数可选class/id

  

posted @ 2017-03-13 17:13  <张磊>  阅读(259)  评论(0)    收藏  举报