js 自定义获得类class和获得id

使用js获取类名,但是低版本浏览器不支持getElementsByClassName,所以我们就需要自定义getClassName,方便跨浏览器使用。

当然,如果采用jquery就不需要。

//获取类名
//兼容一个标签中存在多个类名
function getClassName(className,id){
    //如果浏览器支持getElementsByClassName
    if(document.getElementsByClassName){
        //判断是否有id
        if(id){
            return document.getElementById(id).getElementsByClassName(className);
        }else{
            return document.getElementsByClassName(className);
        }
    }
    if(id){    //如果浏览器不支持getElementsByClassName
        var demo = document.getElementById(id).getElementsByTagName("*");
        var arr= [];

        for(var i=0;i<demo.length;i++){
            var text = demo[i].className.split(" ");
            for(var j=0;j<text.length;j++){
                if(text[j] == className){
                    arr.push(demo[i]);
                }
            }
        }
        return arr;
    }else{
        var demo = document.getElementsByTagName("*");
        var arr= [];

        for(var i=0;i<demo.length;i++){
            var text = demo[i].className.split(" ");
            for(var j=0;j<text.length;j++){
                if(text[j] == className){
                    arr.push(demo[i]);
                }
            }
        }
        return arr;
    }
}

 获得id

function $(id){
    return document.getElementById(id);
}

如果要获取id为hh的元素,直接使用$("hh")即可

 

posted on 2018-10-06 14:35  xxcxxc  阅读(14222)  评论(0编辑  收藏  举报