• 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.getElementByIdx_x('id')
    
    • 上下文必须是document。
    • 必须传参数,参数是string类型,是获取元素的id。
    • 返回值只获取到一个元素,没有找到返回null。

    2.通过name属性(getElementsByName)

    document.getElementsByName('name')
    
    • 上下文必须是document。内容
    • 必须传参数,参数是是获取元素的name属性。
    • 返回值是一个类数组,没有找到返回空数组。

    3.通过标签名(getElementsByTagName)

    var obj = document.getElementsByTagName_r('div');
    for(let i = 0; 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”。
    • 返回值是一个类数组。
  • 相关阅读:
    0919 作业
    0918 登录注册
    20190918 文件处理
    20190917 字符编码
    0916 作业
    0916 数据类型与深浅拷贝
    0913 作业
    0912 for循环及内置方法
    0911 作业
    Ubuntu同时忘记用户密码和root密码
  • 原文地址:https://www.cnblogs.com/guanhuohuo/p/12526231.html
Copyright © 2020-2023  润新知