夜光带你走进JavaScript(四十七)擅长的领域

夜光序言:

 

遗忘你对我来说是一种解脱,希望你能过得更好

 

 

 

 

 

 

 

 

 

 

 

正文:JavaScript HTML DOM 集合(Collection)

HTMLCollection 对象类似包含 HTML 元素的一个数组。

以下代码获取文档所有的 <p> 元素:

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>夜光</title>
</head>
<body>

<h2>JavaScript HTML DOM</h2>

<p>Genius Team</p>

<p>Hello 001</p>

<p id="demo"></p>

<script>
    var myCollection = document.getElementsByTagName("p");
    document.getElementById("demo").innerHTML = "第二个段落的内容为:<span style='color:blanchedalmond;'> " + myCollection[1].innerHTML + '</span>';
</script>

</body>
</html>

很帅气~~             HTMLCollection 对象 length 属性

HTMLCollection 对象的 length 属性定义了集合中元素的数量。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>夜光</title>
</head>
<body>

<h2>JavaScript HTML DOM</h2>

<p>Genius Team</p>

<p>Hello 001</p>

<p id="demo"></p>

<script>
    var myCollection = document.getElementsByTagName("p");
    document.getElementById("demo").innerHTML = "文档包含" + myCollection.length + " 个段落。";
</script>

</body>
</html>

嗯唔:解析

获取 <p> 元素的集合:

var myCollection = document.getElementsByTagName("p");

显示集合元素个数:

document.getElementById("demo").innerHTML = myCollection.length;

集合 length 属性常用于遍历集合中的元素。

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>夜光</title>
</head>
<body>

<h2>JavaScript HTML DOM</h2>

<p>Genius Team</p>

<p>Hello 001</p>

<p>点击按钮修改 p 元素的背景颜色</p>

<button onclick="myFunction()">点我</button>

<script>
    function myFunction() {
        var myCollection = document.getElementsByTagName("p");
        var i;
        for (i = 0; i < myCollection.length; i++) {
            myCollection[i].style.color = "blue";
        }
    }
</script>

</body>
</html>

上面例子,我们需要注意:

HTMLCollection 不是一个数组

HTMLCollection 看起来可能是一个数组,但其实不是。

我们可以像数组一样,使用索引来获取元素。

HTMLCollection 无法使用数组的方法: valueOf(), pop(), push(), 或 join() 。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值