原生js獲取標簽,綁定事件


//功能:綁定事件(兼容瀏覽器)
//參數:
//obj:綁定事件的元素對象(節點對象)
//eventName:事件名,不包括"on" 該參數類型:字符串;
//funName:函數名;  該參數類型:函數對象(不是字符串);

function addEventListener1601(obj,eventName,funName){
    var str = window.navigator.userAgent;
    if(str.indexOf("MSIE")!=-1){//IE
        obj.attachEvent("on"+eventName,funName);
    }else{//非IE;
        obj.addEventListener(eventName,funName,false);
    }
}

//封裝一個函數,
//功能:獲取元素;
//函數名叫$;
//參數只有一個,是字符串類型
    //當參數值為"div"時,該函數獲得的是標簽名為 div的所有元素
    //當參數值為"#divId",時,該函數獲得的是id為divId的元素,
    //當參數值為".divClassName",時,該函數獲得的是class為divClass的所有元素,
    //當參數值為"name=abc"時,該函數獲得的是name屬性為 abc的所有元素;

function $(str){
    var firstChar = str.charAt(0);
    if(firstChar=="#"){
        return document.getElementById(str.substring(1));
    }else if(firstChar=="."){
        return document.getElementsByClassName(str.substring(1));
    }else{
        var temp = str.substring(0,5);
        if(temp=="name="){
            return document.getElementsByName(str.substring(5));
        }else{
            return document.getElementsByTagName(str);
        }
    }
}
    

//封裝一個函數,功能:給若干個元素對象綁定同一個函數。
//函數名叫addEvents;
//參數:對象數組,事件名(不含on),函數;

function addEvents(objArr,eventName,funName){
    for(var i=0;i<objArr.length;i++){
        addEventListener1601(objArr[i],eventName,funName);
    }
}

 


免責聲明!

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



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