javascript兼容

一、获取非行内样式

function getStyle(obj,attr){
        return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle(obj,true)[attr];
    }

二、获取className的兼容

function getElementsByClass(className){
    if(document.getElementsByClassName){
        return document.getElementsByClassName(className);
    }else{
        var arr = [];
        var obj = document.getElementsByTagName("*");//兼容IE低版本
        for(var i = 0; i < obj.length; i++){
            if(obj[i].className == className){
                arr.push(obj[i]);
            }
        }
        return arr;
    }
} 

三、监听事件的添加和移除兼容

//兼容(添加)
function addEventListen(obj,event,fun,boo){
    if(obj.addEventListener){   // 标准
        obj.addEventListener(event,fun,boo);
    }else{                      //IE 
        obj.attachEvent("on"+event,fun);
    }
}

//兼容(移除)
function removeEventListen(obj,event,fun,boo){
    if(obj.removeEventListener){   //标准
        obj.removeEventListener(event,fun,boo);
    }else{                          //IE 
        obj.detachEvent("on" + event,fun);
    }
}

四、删除空白节点

1.//删除子节点中的空白文本节点(参数是父亲节点)
function deleteSpace(node){
    //将子节点从父级中提出来
    var childs = node.childNodes;
    //便利所有的子节点
    for(var i = 0;i < childs.length;i ++){
        //判断找出所有的文本节点且是空白的文本节点 
        if(childs[i].nodeType === 3 && /^\s+$/.test(childs[i].nodeValue)){
            childs[i].parentNode.removeChild(childs[i]);
        }
    }
    return node;
}


2.//删除子节点中的空白文本节点(参数是所有子节点)
function removeSpace(node){
    //遍历所有子节点
    for(var i = 0;i < node.length;i ++){
        //判断找出所有的文本节点且是空白的文本节点
        if(node[i].nodeType === 3 && /^\s+$/.test(node[i].nodeValue)){
            node[i].parentNode.removeChild(node[i]);
        }
    }
    return node;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值