JavaScript获取元素的方式总结

来源:互联网 发布:网络情歌2013 编辑:程序博客网 时间:2024/06/05 06:38

JavaScript有三种获取DOM元素的方式:id名、类名和标签名。

1. getElementById

 通过id属性来获取对应节点对象,只有一个输入参数(id名),返回一个对象。

document.getElementById("container");alert(typeof document.getElementById("container"));//typeof获取返回值类型

2. getElementsByTagName

 通过标签名获取对应节点对象,同样只有一个输入参数(标签名),但返回一个对象数组。

var o = document.getElementByTagName("li");console.log(o.length);

 getElementByTagName支持通配符(”*”)作为函数的输入。使用通配符可以统计html文档中元素的个数:

var objs = document.getElementsByTagName("*");console.log("html文档中元素的个数为;"+objs.length);//在浏览器控制台可以看到上述html文档加载到浏览器中会生成15个元素://测试结果为:

这里写图片描述


  getElementById和getElementByTagName结合使用。

var obj = document.getElementsById("container");var objs = obj.getElementsByTagName("*");console.log("id为\"container\"的div中节点的个数为:"+objs.length);//测试结果为:

这里写图片描述

3. getElementsByClassName

 HTML5 DOM新增的方法,通过类名获取节点对象,返回值是数组。

var objs  = document.getElementsByClassName("header");console.log("类名为header的元素的个数为:"+objs.length);//测试结果为:

这里写图片描述


 查找有多个类名的节点

//查找同时带有类名“tag”和“header”的节点,将类名用空格隔开,与顺序无关var objs  = document.getElementsByClassName("tag header");console.log("类名为header的元素的个数为:"+objs.length);//测试结果为:

这里写图片描述


 组合使用getElementById和getElementsByClassName

var obj = document.getElementById("container");var objs = obj.getElementsByClassName("header");console.log("id为container的div中类名为header的节点的个数为:"+objs.length);//测试结果为:

这里写图片描述


用于以上测试的html代码,用来演示JavaScript获取元素的方法,html代码如下所示:

<!doctype html><html lang="en"><head>    <meta charset="UTF-8">    <title>hello</title></head><body>    <div id="container">        <h4 class="header">css 获取元素的方式:id</h3>        <h4 class="header">css 获取元素的方式:class name</h3>        <h4 class="header tag">css 获取元素的方式:tag name</h3>        <div id="main">            <ul>                <li>getElementById</li>                <li>getElementByClassName</li>                <li>getElementByTagName</li>            </ul>        </div>    </div></body><script>//测试代码填放处</script></html>
2 0
原创粉丝点击