zoukankan      html  css  js  c++  java
  • JS获取HTML DOM元素的方法

    在JS中获取元素的方法有很多,可以根据实际需要选择合适的方法

    一、JS获取元素的方法

         1)根据id获取标签元素
                var div1=document.getElementById("div1");
    
            2)根据标签名获取标签列表
                   var divs=document.getElementsByTagName("div")
            
            3)根据className获取标签列表
                var div0=document.getElementsByClassName("div0");
            console.log(div0)
    
            4)获取id必须使用document调用getElementById
                var diva=document.getElementById("diva");
                var div1=diva.getElementById("div1")//错误写法,
                
            5)下面两个方法获取的都是HTMLCollection HTML列表,getElementByTagNames这个方法处理可以使用document以外,还可以使用元素调用,如果使用元素调用,就是指当前这个元素的子元素的中的标签名是div的
              var diva=document.getElementById("diva");
              var divs=diva.getElementsByTagName("div");
              var divs=document.getElementsByTagName("div");//这个比上面多
              console.log(divs)
    
            6) 可以根据元素获取子元素中class是div0的所有元素,如果可以使用document.getElementsByClassName就是获取整个文档中class是div0的
                var diva=document.getElementById("diva");
                var div0=diva.getElementsByClassName("div0");
                console.log(div0)
    
            7)根据name获取节点列表,NodeList节点列表,getElementByName不可以通过父元素获取
                var form1=document.getElementById("form1");
                var sex=document.getElementsByName("sex");
                console.log(sex)

    以下方法适用于IE8以下

            8)根据选择器获取到第一个找到的元素
                var div=document.querySelector("div");//根据选择器获取到所有的div
                var div1=document.querySelector("#div1");
                var div0=document.querySelector(".div0");
                var div0=document.querySelector("#diva>.div0");
                var ps=document.querySelector("[name=password]")
                console.log(ps)

    二、获取子元素和子节点

          9)子节点和子元素
            var diva=document.querySelector("#diva");
            console.log(diva.childNodes);//子节点,是NodeList,包含文本节点,注释节点等等
            console.log(diva.children);//子元素 是HTMLCollection,只包含元素
    
          10)父节点和父元素
            console.log(diva.parentNode);//父节点
            console.log(diva.parentElement)//父元素
        
          11)第一个子节点和第一个子元素
            console.log(diva.firstChild);//第一个子节点
            console.log(diva.firstElementChild);//第一个子元素
    
          12)最后一个子节点和最后一个子元素
            console.log(diva.lastChild);//最后一个子节点
            console.log(diva.lastElementChild);//最后一个子元素
    
          13)下一个兄弟节点和下一个兄弟元素
            console.log(diva.nextSibling);//下一个兄弟节点
            console.log(diva.nextElementSibling);//下一个兄弟元素
    
          14)上一个兄弟节点和上一个兄弟元素
            console.log(diva.previousSibling);//上一个兄弟节点
            console.log(diva.previousElementSibling);//上一个兄弟元素
  • 相关阅读:
    visual studio 2015 Opencv 3.4.0配置
    读漫谈架构博文有感
    代码阅读方法与实践阅读笔记06
    代码阅读方法与实践阅读笔记05
    apache https 伪静态
    今天网站后台登录页面需要生成一个二维码,然后在手机app上扫描这个二维码,实现网站登录的效果及其解决方案如下
    架设lamp服务器后,发现未按照 Apache xsendfile模块,
    linux下bom头导致的php调用php接口 返回的json字符串 无法转成 数组,即json字符串无法解码的问题
    什么是OAuth授权?
    以application/json 方式提交 然后用在php中读取原始数据流的方式获取 在json_encode
  • 原文地址:https://www.cnblogs.com/shewill/p/12643833.html
Copyright © 2011-2022 走看看