欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

getElementById

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

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

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

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

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

getElementsByTagName

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

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

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

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

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

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

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

getElementsByClassName

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

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

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

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

對(duì)于比較老的瀏覽器,比如IE6、7我們可以通過下面的hack方式來實(shí)現(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一樣,能通過選擇器來獲取元素,實(shí)現(xiàn)的方法和上面的getElementsByClassName差不多,如果有興趣自己可以實(shí)現(xiàn)一套選擇器。不過我覺得有上面的三個(gè)方法再結(jié)合事件冒泡,已經(jīng)夠用了,畢竟這三種性能上算是優(yōu)秀的。

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

相關(guān)文章

  • 一文詳解axios四種傳參方式及后端接參

    一文詳解axios四種傳參方式及后端接參

    在開發(fā)的過程中,我們會(huì)經(jīng)常使用到axios進(jìn)行數(shù)據(jù)的交互,這篇文章主要給大家介紹了關(guān)于axios四種傳參方式及后端接參的相關(guān)資料,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-10-10
  • js實(shí)現(xiàn)簡(jiǎn)單音樂播放器

    js實(shí)現(xiàn)簡(jiǎn)單音樂播放器

    這篇文章主要介紹了js實(shí)現(xiàn)簡(jiǎn)單音樂播放器,可拖動(dòng)進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • js動(dòng)態(tài)切換圖片的方法

    js動(dòng)態(tài)切換圖片的方法

    這篇文章主要介紹了js動(dòng)態(tài)切換圖片的方法,包含完整的css文件與js文件實(shí)現(xiàn)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-01-01
  • js select實(shí)現(xiàn)省市區(qū)聯(lián)動(dòng)選擇

    js select實(shí)現(xiàn)省市區(qū)聯(lián)動(dòng)選擇

    這篇文章主要為大家詳細(xì)介紹了js select實(shí)現(xiàn)省市區(qū)聯(lián)動(dòng)選擇效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • JS實(shí)現(xiàn)多張圖片預(yù)覽同步上傳功能

    JS實(shí)現(xiàn)多張圖片預(yù)覽同步上傳功能

    這篇文章主要介紹了JS實(shí)現(xiàn)多張圖片預(yù)覽同步上傳功能的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 淺談Emergence.js 檢測(cè)元素可見性的 js 插件

    淺談Emergence.js 檢測(cè)元素可見性的 js 插件

    這篇文章主要介紹了淺談Emergence.js 檢測(cè)元素可見性的 js 插件,詳細(xì)的介紹了Emergence.js安裝和使用方法,具有一定的參加性,有興趣的可以了解一下
    2017-11-11
  • 用JS動(dòng)態(tài)改變表單form里的action值屬性的兩種方法

    用JS動(dòng)態(tài)改變表單form里的action值屬性的兩種方法

    下面小編就為大家?guī)硪黄肑S動(dòng)態(tài)改變表單form里的action值屬性的兩種方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-05-05
  • Javascript通過控制類名更改樣式

    Javascript通過控制類名更改樣式

    這篇文章主要介紹了Javascript通過控制類名更改樣式,下面來和小編一起來學(xué)習(xí)吧
    2019-05-05
  • JS給Array添加是否包含字符串的簡(jiǎn)單方法

    JS給Array添加是否包含字符串的簡(jiǎn)單方法

    下面小編就為大家?guī)硪黄狫S給Array添加是否包含字符串的簡(jiǎn)單方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • js中map()函數(shù)的使用案例詳解

    js中map()函數(shù)的使用案例詳解

    map()方法定義在JavaScript的Array中,它返回一個(gè)新的數(shù)組,數(shù)組中的元素為原始數(shù)組調(diào)用函數(shù)處理后的值,這篇文章主要介紹了js中map()函數(shù)的使用,需要的朋友可以參考下
    2022-11-11

最新評(píng)論