最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript中常見獲取元素的方法匯總

 更新時間:2015年03月04日 14:22:30   投稿:hebedich  
本文向大家介紹了javascript中常見的3種獲取元素的方法,分別是通過元素ID、通過標(biāo)簽名字和通過類名字來獲取,并附上了示例,希望大家能夠喜歡。

常見的獲取元素的方法有3種,分別是通過元素ID、通過標(biāo)簽名字和通過類名字來獲取。

getElementById

DOM提供了一個名為getElementById的方法,這個方法將返回一個與之對應(yīng)id屬性的節(jié)點對象。使用的時候請注意區(qū)分大小寫。

它是document對象特有的函數(shù),只能通過其來調(diào)用該方法。其使用的方法如下:

復(fù)制代碼 代碼如下:

document.getElementById('demo') //demo是元素對應(yīng)的ID

該方法兼容主流瀏覽器,甚至包括IE6+,可以大膽使用。

getElementsByTagName

該方法返回一個對象數(shù)組(準(zhǔn)確的說是HTMLCollection集合,它不是真正意義上的數(shù)組),每個對象分別對應(yīng)著文檔里有著給定標(biāo)簽的一個元素。類似于getElementById,同樣,該方法只提供一個參數(shù),它的參數(shù)是指定標(biāo)簽的名字,示例代碼如下:

復(fù)制代碼 代碼如下:

document.getElementsByTagname('li')  //li是標(biāo)簽的名字

需要注意的是,該方法除了能被document對象調(diào)用之外,還可以被普通的元素調(diào)用。示例如下:

復(fù)制代碼 代碼如下:

var demo = document.getElementById('demo');
var lis = demo.getElementsByTagname('li');    

同樣,該方法兼容主流瀏覽器,甚至包括IE6+,可以大膽使用。

getElementsByClassName

除了通過指定標(biāo)簽獲取元素外,DOM還提供了getElementsByClassName方法來獲取指定class名的元素。不過由于該方法比較新,較老的瀏覽器還不支持,比如IE6。不過我們可以通過hack方式來彌補老瀏覽器缺陷。該方法調(diào)用的方式如下所示:

復(fù)制代碼 代碼如下:

document.getElementsByClassName('demo')    //demo為元素指定的class名

和getElementsByTagname一樣, 該方法除了能被document對象調(diào)用之外,還可以被普通的元素調(diào)用。

對于比較老的瀏覽器,比如IE6、7我們可以通過下面的hack方式來實現(xiàn):

復(fù)制代碼 代碼如下:

function getElementsByClassName(node,classname){
        if(node.getElementsByClassName) {
            return node.getElementsByClassName(classname);
        }else {
            var results = [];
            var elems = node.getElementsByTagName("*");
            for(var i = 0; i < elems.length; i++){
                if(elems[i].className.indexOf(classname) != -1){
                    results[results.length] = elems[i];
                }
            }
            return results;
        }
    }  

拓展

如果你不僅僅滿足上面那些元素選擇的方法,想和JQuery一樣,能通過選擇器來獲取元素,實現(xiàn)的方法和上面的getElementsByClassName差不多,如果有興趣自己可以實現(xiàn)一套選擇器。不過我覺得有上面的三個方法再結(jié)合事件冒泡,已經(jīng)夠用了,畢竟這三種性能上算是優(yōu)秀的。

以上就是本文的全部內(nèi)容了,希望對大家能夠有所幫助。

相關(guān)文章

最新評論

东明县| 祁东县| 宜良县| 绥阳县| 蒲江县| 凤山市| 高邑县| 乐清市| 那曲县| 昌邑市| 海口市| 育儿| 东台市| 静海县| 前郭尔| 庆安县| 祁东县| 泰和县| 奎屯市| 出国| 武鸣县| 曲靖市| 寻乌县| 即墨市| 利津县| 琼中| 白玉县| 龙陵县| 郁南县| 台东县| 东台市| 怀化市| 滦南县| 遂平县| 奉化市| 安宁市| 秀山| 昌吉市| 衢州市| 鹤壁市| 乐至县|