原生JS獲取HTML DOM元素的8種方法


JS獲取DOM元素的方法(8種)

  • 通過ID獲取(getElementById)
  • 通過name屬性(getElementsByName)
  • 通過標簽名(getElementsByTagName)
  • 通過類名(getElementsByClassName)
  • 通過選擇器獲取一個元素(querySelector)
  • 通過選擇器獲取一組元素(querySelectorAll)
  • 獲取html的方法(document.documentElement)
  • document.documentElement是專門獲取html這個標簽的
  • 獲取body的方法(document.body)
  • document.body是專門獲取body這個標簽的。

1.通過ID獲取(getElementById)

document.getElementById('id')
  • 上下文必須是document。
  • 必須傳參數,參數是string類型,是獲取元素的id。
  • 返回值只獲取到一個元素,沒有找到返回null。

2.通過name屬性(getElementsByName)

document.getElementsByName('name')
  • 上下文必須是document。內容
  • 必須傳參數,參數是是獲取元素的name屬性。
  • 返回值是一個類數組,沒有找到返回空數組。

3.通過標簽名(getElementsByTagName)

var obj = document.getElementsByTagName('div');
for(let i = 0; i<obj.length; i++){
        obj[i].onclick = function(e){
            console.log(i)
        }
    }
  • 上下文可以是document,也可以是一個元素,注意這個元素一定要存在。
  • 參數是是獲取元素的標簽名屬性,不區分大小寫。
  • 返回值是一個類數組,沒有找到返回空數組

4.通過類名(getElementsByClassName

var obj1 = document.getElementsByClassName('animated')
// console.log
0:div.app.animated
1:div#login.login.animated.rubberBand
2:div#reg.reg.animated.shake
3:div#kefu.kefu.animated.swing
4:div#LoginState.state.animated.bounce
5:div.loginState.animated
6:div.regState.animated
7:div.pop.animated
  • 上下文可以是document,也可以是一個元素。
  • 參數是元素的類名。
  • 返回值是一個類數組,沒有找到返回空數組。

5.通過選擇器獲取一個元素(querySelector)

document.querySelector('.animated')
  • 上下文可以是document,也可以是一個元素。
  • 參數是選擇器,如:”div .className”。
  • 返回值只獲取到第一個元素。

6.通過選擇器獲取一組元素(querySelectorAll)

 

document.querySelector('.animated')

 

  • 上下文可以是document,也可以是一個元素。
  • 參數是選擇器,如:”div .className”。
  • 返回值是一個類數組。

 


免責聲明!

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



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