JavaScript DOM编程-通过DOM获取页面元素的方法

1.根据 id 获取

2.根据标签名获取

3.通过HTML5新增的方法获取

4.特殊元素获取

1.根据 id 获取元素


这里我们讲通过使用getElementByld根据id获取页面元素:

getElementByld语法: var element = doucument.getElementByld(id);

参数:element是一个Element对象,如果当前文档中拥有特定ID的元素不存在则返回null

id是大小写敏感的字符串,代表了所要查找元素的唯一ID

返回值:返回一个匹配到 ID 的 DOM Element对象。若在当前Document下没有找到,则返回null

代码如下(示例):

Document
2022-3-2

运行结果:

在这里插入图片描述

我们可以看到返回的类型是对象类型,这就更能体现出DOM是一个文档对象模型了

2.根据标签名获取元素


    • 噜啦啦噜啦啦,啦啦啦啦啦
    • 噜啦啦噜啦啦,啦啦啦啦啦
    • 噜啦啦噜啦啦,啦啦啦啦啦
    • 噜啦啦噜啦啦,啦啦啦啦啦
    • 噜啦啦噜啦啦,啦啦啦啦啦
    • 如果我们想获取这五个li对象应该怎么做呢,这个时候根据id获取是不是很麻烦,所以这时候就用到了我们的根据标签名获取元素的getElementsByTagName()方法

      代码如下所示:

      Document
      • 噜啦啦噜啦啦,啦啦啦啦啦1
      • 噜啦啦噜啦啦,啦啦啦啦啦2
      • 噜啦啦噜啦啦,啦啦啦啦啦3
      • 噜啦啦噜啦啦,啦啦啦啦啦4
      • 噜啦啦噜啦啦,啦啦啦啦啦5
      • 运行结果:

        在这里插入图片描述

        getElementsByTagName返回的是获取过来元素对象的集合,以伪数组的形式存储的

        如果我们想获取第一个li里面的元素可以通过数组形式访问:

        console.log(lis[0]);

        如果想要依次打印里面的元素对象我们可以采取遍历的方式:

        for( var i = 0; i < lis.length; i++)

        {

        console.log(lis[i]);

        }

        注意:

        1.因为得到的是一个对象的集合,所以我们想要操作里面的元素就需要遍历。

        2.得到元素对象是动态的

        • 噜啦啦噜啦啦,啦啦啦啦啦1
        • 噜啦啦噜啦啦,啦啦啦啦啦2
        • 噜啦啦噜啦啦,啦啦啦啦啦3
        • 噜啦啦噜啦啦,啦啦啦啦啦4
        • 噜啦啦噜啦啦,啦啦啦啦啦5
          1. 哇哇哇哇哇哇哇哇
          2. 哇哇哇哇哇哇哇哇
          3. 哇哇哇哇哇哇哇哇
          4. 哇哇哇哇哇哇哇哇
          5. 那如果我们的代码是这样的。我们想获取ol 里面的 li 该怎么办。

            那我们就不可以用document.getElementsByTagName()来获取对象了,因为这样会把我们页面里的所有 li 都获取出来。

            这时候我们可以通过这个方法获取某个元素(父元素)内部所有指定标签名的子元素

            element.getElementsByTagName(‘标签名’);

            注意:父元素必须是单个对象(必须指明是哪一个元素对象).获取的时候不包括父元素自己

            我们可以这样做:

            var ol = document.getElementsByTagName(‘ol’); //[ol],得到的是一个伪数组,所以父元素应该是ol[0]

            console.log(ol[0].getElementsByTagName(‘li’));

            也可以这样做:

            为了方便我们给ol 标签加一个id属性:

              var ol = document.getElementById(‘ol’);//这样我们就直接获取到了父元素

              console.log(ol.getElementsByTagName(‘li’));

              3.通过HTML5新增的方法获取元素


              这个是HTML5新增的获取元素的方法

              document.getElementsByClassName(‘类名’); //根据类名返回元素对象集合

              示例代码如下:

              Document
              盒子1
              盒子2
              • 首页
              • 产品
              • 返回的对象也是以伪数组的形式存储的

                在这里插入图片描述

                这个同样也是HTML5新增的,而且功能非常强大
                自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

                深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

                因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

                img

                既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

                由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

                如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

                最后

                整理面试题,不是让大家去只刷面试题,而是熟悉目前实际面试中常见的考察方式和知识点,做到心中有数,也可以用来自查及完善知识体系。

                《前端基础面试题》,《前端校招面试题精编解析大全》,《前端面试题宝典》,《前端面试题:常用算法》PDF完整版点击这里免费领取

                前端面试题宝典

                前端校招面试题详解

                面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**

                如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

                [外链图片转存中…(img-MRzvGL9K-1713498515779)]

                最后

                整理面试题,不是让大家去只刷面试题,而是熟悉目前实际面试中常见的考察方式和知识点,做到心中有数,也可以用来自查及完善知识体系。

                《前端基础面试题》,《前端校招面试题精编解析大全》,《前端面试题宝典》,《前端面试题:常用算法》PDF完整版点击这里免费领取

                [外链图片转存中…(img-CtgVx55Z-1713498515779)]

                [外链图片转存中…(img-n3OsXQN5-1713498515779)]

                [外链图片转存中…(img-PHtnyGQv-1713498515779)]

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

              请填写红包祝福语或标题

              红包个数最小为10个

              红包金额最低5元

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

              抵扣说明:

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

              余额充值