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

    • DOM树:
  • 1.文档:

  • 2.元素:

  • 3.节点:

  • 二、获取页面中的元素的几种方法:

    • 1.根据 id 获取元素
  • 2.根据标签名获取元素

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

  • 4.根据特殊元素获取元素


一、什么是DOM?

========================================================================

DOM简称:文档对象模型,是一种处理可扩展编程语言的标准编程接口,我们通过这些接口来改变网页的内容、结构和样式。

DOM树:


在这里插入图片描述

1.文档:


一个网页就是一个文档,DOM中使用document表示

2.元素:


页面中的所有标签都是元素,DOM中使用element表示

3.节点:


网页中的所有内容都是节点(标签,属性,文本,注释等),DOM中使用node表示

二、获取页面中的元素的几种方法:

===============================================================================

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新增的获取元素的方法
              自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

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

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

              img

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

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

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

              结尾

              学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

              资料领取方式:戳这里获取

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

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

              结尾

              学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。

              资料领取方式:戳这里获取

              html5

            • 17
              点赞
            • 18
              收藏
              觉得还不错? 一键收藏
            • 0
              评论

            “相关推荐”对你有帮助么?

            • 非常没帮助
            • 没帮助
            • 一般
            • 有帮助
            • 非常有帮助
            提交
            评论
            添加红包

            请填写红包祝福语或标题

            红包个数最小为10个

            红包金额最低5元

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

            抵扣说明:

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

            余额充值