JavaScript_DOM

news2024/11/29 4:42:57

JavaScript_DOM

概述

简单说就是用来操作HTML的方法,详情看官方文档。

对于我们只需要会使用下面的这个Element对象就可以了。

获取 Element对象

HTML 中的 Element 对象可以通过 Document 对象获取,而 Document 对象是通过 window 对象获取。

Document 对象中提供了以下获取 Element 元素对象的函数

  • getElementById():根据id属性值获取,返回单个Element对象
  • getElementsByTagName():根据标签名称获取,返回Element对象数组
  • getElementsByName():根据name属性值获取,返回Element对象数组
  • getElementsByClassName():根据class属性值获取,返回Element对象数组

代码演示:

下面有提前准备好的页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <img id="image" src="https://ts1.cn.mm.bing.net/th/id/R-C.589ed66e38f19542c0f1cffec3be1361?rik=1XjVmH47qLrd2Q&riu=http%3a%2f%2fimg.ppt.cn%2f20180328%2f77eb43c198f8291a5b60b10ee6539814.jpg&ehk=l%2fXtp9WttQg9LfdU7s2FD6whgjKUW9nbqCg6AvF%2betA%3d&risl=&pid=ImgRaw&r=0"> <br>

    <div class="div1">div1</div>   <br>
    <div class="div2">div2</div> <br>

    <input type="checkbox" name="hobby"> 电影
    <input type="checkbox" name="hobby"> 旅游
    <input type="checkbox" name="hobby"> 游戏
    <br>
    <script>
		//在此处书写js代码
    </script>
</body>
</html>
  1. 根据 id 属性值获取上面的 img 元素对象,返回单个对象getElementById
   <!DOCTYPE html>
	<html lang="en">
	<head>
	    <meta charset="UTF-8">
	    <title>Title</title>
	</head>
	<body>
	    <img id="image" src="https://ts1.cn.mm.bing.net/th/id/R-C.589ed66e38f19542c0f1cffec3be1361?rik=1XjVmH47qLrd2Q&riu=http%3a%2f%2fimg.ppt.cn%2f20180328%2f77eb43c198f8291a5b60b10ee6539814.jpg&ehk=l%2fXtp9WttQg9LfdU7s2FD6whgjKUW9nbqCg6AvF%2betA%3d&risl=&pid=ImgRaw&r=0"> <br>

    <div class="div1">div1</div>   <br>
    <div class="div2">div2</div> <br>

    <input type="checkbox" name="hobby"> 电影
    <input type="checkbox" name="hobby"> 旅游
    <input type="checkbox" name="hobby"> 游戏
    <br>
    <script>
		var img = document.getElementById("image");
        console.log(img)
    </script>
</body>
</html>

运行结果

在这里插入图片描述

  1. 根据标签名称获取所有的 div 元素对象getElementsByTagName
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
</head>
<body>
   <img id="image" src="https://ts1.cn.mm.bing.net/th/id/R-C.589ed66e38f19542c0f1cffec3be1361?rik=1XjVmH47qLrd2Q&riu=http%3a%2f%2fimg.ppt.cn%2f20180328%2f77eb43c198f8291a5b60b10ee6539814.jpg&ehk=l%2fXtp9WttQg9LfdU7s2FD6whgjKUW9nbqCg6AvF%2betA%3d&risl=&pid=ImgRaw&r=0"> <br>

   <div class="div1">div1</div>   <br>
   <div class="div2">div2</div> <br>

   <input type="checkbox" name="hobby"> 电影
   <input type="checkbox" name="hobby"> 旅游
   <input type="checkbox" name="hobby"> 游戏
   <br>
   <script>
   	//在此处书写js代码
       var divs = document.getElementsByTagName("div");// 返回一个数组,数组中存储的是 div 元素对象
       console.log(divs.length)
       //遍历数组
       for (let i = 0; i < divs.length; i++) {
           console.log(divs[i]);
       }
   </script>
</body>
</html>

运行结果
在这里插入图片描述

  1. 获取所有的满足 name = 'hobby' 条件的元素对象getElementsByName
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
</head>
<body>
   <img id="image" src="https://ts1.cn.mm.bing.net/th/id/R-C.589ed66e38f19542c0f1cffec3be1361?rik=1XjVmH47qLrd2Q&riu=http%3a%2f%2fimg.ppt.cn%2f20180328%2f77eb43c198f8291a5b60b10ee6539814.jpg&ehk=l%2fXtp9WttQg9LfdU7s2FD6whgjKUW9nbqCg6AvF%2betA%3d&risl=&pid=ImgRaw&r=0"> <br>

   <div class="div1">div1</div>   <br>
   <div class="div2">div2</div> <br>

   <input type="checkbox" name="hobby"> 电影
   <input type="checkbox" name="hobby"> 旅游
   <input type="checkbox" name="hobby"> 游戏
   <br>
   <script>
   	//3. getElementsByName:根据name属性值获取,返回Element对象数组
       var hobbys = document.getElementsByName("hobby");
       for (let i = 0; i < hobbys.length; i++) {
           console.log(hobbys[i]);
       }
   </script>
</body>
</html>

运行结果
在这里插入图片描述

  1. 获取所有的满足 class='d' 条件的元素对象getElementsByClassName()
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <img id="image" src="https://ts1.cn.mm.bing.net/th/id/R-C.589ed66e38f19542c0f1cffec3be1361?rik=1XjVmH47qLrd2Q&riu=http%3a%2f%2fimg.ppt.cn%2f20180328%2f77eb43c198f8291a5b60b10ee6539814.jpg&ehk=l%2fXtp9WttQg9LfdU7s2FD6whgjKUW9nbqCg6AvF%2betA%3d&risl=&pid=ImgRaw&r=0"> <br>

    <div class="d">div1</div>   <br>
    <div class="d">div2</div> <br>

    <input type="checkbox" name="hobby"> 电影
    <input type="checkbox" name="hobby"> 旅游
    <input type="checkbox" name="hobby"> 游戏
    <br>
    <script>
		var ds = document.getElementsByClassName("d")
        for(var i = 0; i < ds.length; ++ i){
            console.log(ds[i])
        }
    </script>
</body>
</html>

运行结果
在这里插入图片描述

小案例

获取被选中的复选框对象

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <input type="checkbox" name="hobby" checked="true" value="电影"> 电影
    <input type="checkbox" name="hobby" value="旅游"> 旅游
    <input type="checkbox" name="hobby" value="游戏"> 游戏
    <br>
    <script>
		//1,获取所有的 复选框 元素对象
        var hobbys = document.getElementsByName("hobby");
        var res = new Array();
        //2,遍历数组,筛选出复选框为true的
        for (let i = 0; i < hobbys.length; i++) {
            if (hobbys[i].checked == true){
                res.push(hobbys[i]);
            }
        }
        // 3. 查询筛选出来的内容
        for(let i = 0; i < res.length; ++ i){
            console.log(res[i])
        }
    </script>
</body>
</html>

运行结果
在这里插入图片描述

设置div中的内容

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <div class="div1">1</div>
    <div class="div2">2</div>
    <br>
    <script>
		//1,获取所有的 div 元素对象
        var divs = document.getElementsByTagName("div");
        /*
                style:设置元素css样式
                innerHTML:设置元素内容
            */
        //2,遍历数组,获取到每一个 div 元素对象,并修改元素内容
        for (let i = 0; i < divs.length; i++) {
            //divs[i].style.color = 'red';
            divs[i].innerHTML = "haha";
        }
    </script>
</body>
</html>

运行结果
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49265.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

焱融科技为国家重点实验室打造海量高性能存储

中国科学院大气物理研究所大气科学和地球流体力学数值模拟国家重点实验室&#xff08;英文缩写 LASG&#xff09;是国家级重点实验室。LASG 主要研究方向为地球气候系统模式的研发与应用&#xff1b;天气气候动力学理论、气候系统变化规律及其异常发生机制&#xff1b;天气气候…

排行榜谁最稳?

在 RedMonk 编程语言排行榜中&#xff0c;前端JavaScript 编程语言从2015年开始便稳居榜首&#xff0c;可以说是所有编程语言中最稳定的一个。 01 JavaScript 常年居于榜首原因 JavaScript 编程语言可以常年居于排行榜榜首位置&#xff0c;和它是前端工程师使用的唯一编程语言…

【树莓派】刷机、基础配置及多种方式登录

目录一、树莓派刷机二、树莓派登录1、HDMI线连接显示器登录2、串口方式登录&#xff08;1&#xff09;USB-TTL模块连接树莓派串口&#xff08;2&#xff09;修改系统配置&#xff0c;启用串口&#xff08;3&#xff09;用secureCRT登录树莓派3、网络方式登录&#xff08;1&…

基于51单片机霍尔传感器测速(仿真+源程序)

资料编号&#xff1a;196 下面是该资料仿真演示视频&#xff1a; 196-基于51单片机霍尔传感器测速&#xff08;仿真源程序全套资料&#xff09;功能简介&#xff1a; 51单片机计数测速转速测量&#xff0c;在仿真中等价于测量外部脉冲频率&#xff1b;如果修改输入脉冲的频率&…

前端小白科普:小程序组件与插件有啥区别?怎么用?

一直以为小程序组件和小程序插件是一回事&#xff0c;只是措辞不一样&#xff0c;导致造成乌龙&#xff0c;其实完全是两回事&#xff0c;插件是可以直接提供服务的&#xff0c;组件是给开发者提供的轮子&#xff0c;不能直接提供服务。 先看看微信是如何定义小程序插件的&…

[附源码]计算机毕业设计springboot健身房信息管理

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Flutter 离线数据方案 Flutter_Data 包

Flutter 离线数据方案 Flutter_Data 包 原文 https://levelup.gitconnected.com/flutter-offline-first-with-flutter-data-62bad61097be 前言 通过离线优先来改善您的用户体验 Flutter Data 是一个让你的应用程序先离线的软件包。 离线时&#xff0c;它在设备上使用 Hive 存储…

DirectX12 - Triangle Culling and Winding Order(三角形的剔除与绕序)

这里是SunshineBooming&#xff0c;GPU公司一枚小小的Driver工程师&#xff0c;主要工作是写DirectX12 Driver&#xff0c;我会持续更新这个DX12 Spec系列&#xff0c;可能比较冷门&#xff0c;但是都是干货和工作中的心得体会&#xff0c;有任何GPU相关的问题都可以在评论区互…

Chapter9.2:线性系统的状态空间分析与综合(下)

此系列属于胡寿松《自动控制原理题海与考研指导》(第三版)习题精选&#xff0c;仅包含部分经典习题&#xff0c;需要完整版习题答案请自行查找&#xff0c;本系列属于知识点巩固部分&#xff0c;搭配如下几个系列进行学习&#xff0c;可用于期末考试和考研复习。 自动控制原理(…

GJB 5000B二级-LD领导作用

概要:GJB 5000B将GJB 5000A三级中的LD领导作用划分为二级内容,将组织类目标下沉至二级 借鉴GJB 9001C中的领导作用,结合各个行业优秀的实践,将5000A中的共用目标、实践进行了提炼、总结最终形成GJB 5000B中的领导作用实践域。 目的:进一步强化上层的领导作用,由高层、中层…

DOPE修饰岩藻多糖 Fucoidan-DOPE 岩藻多糖-二油酰基磷脂酰乙醇胺

DOPE修饰岩藻多糖 Fucoidan-DOPE 岩藻多糖-二油酰基磷脂酰乙醇胺 中文名称&#xff1a;岩藻多糖-二油酰基磷脂酰乙醇胺 英文名称&#xff1a;Fucoidan-DOPE 别称&#xff1a;DOPE修饰岩藻多糖&#xff0c;DOPE-岩藻多糖 外观:固体或粘性液体&#xff0c;取决于分子量 PEG分…

天问一号(Tianwen-1)详细介绍

天问一号&#xff08;Tianwen-1&#xff09;是中国第二个火星探测项目。2020年4月24日&#xff0c;中国行星探测任务被命名为“天问系列”&#xff0c;火星探测任务被命名为天问一号&#xff0c;后续行星探测任务依次编号。中国首次火星探测任务标识为“揽星九天”。 火星探测任…

基于stm32的智能药盒

提示&#xff1a;记录2022年4月做的毕设 文章目录前言一、任务书1.1设计(研究)目标:1.2设计(研究)内容:二、框架思路三、硬件四、联系我们五、相关功能介绍六、喜欢请点赞哦&#xff01;前言 基于STM32的智能药盒&#xff0c;主控使用STM32F103&#xff08;正点原子战舰板子&a…

word 中添加图片目录、内部链接

目录1. 图片、表格添加目录1.1 插入题注1.2 添加目录2. 添加内部链接1. 图片、表格添加目录 1.1 插入题注 只有正确地插入题注&#xff0c;图表目录才能快速生成。 &#xff08;1&#xff09;两个方法调用“题注”功能&#xff08;任选1个&#xff09; 方法一&#xff1a;在菜…

【论文阅读 ICTIR‘2022】Revisiting Open Domain Query Facet Extraction and Generation

文章目录Revisiting Open Domain Query Facet Extraction and GenerationMotivationContributionsMethodFacet Extraction and GenerationFacet Extraction as Sequence LabelingAutoregressive Facet GenerationFacet Generation as Extreme Multi-Label ClassificationFacet …

【Pandas数据处理100例】(九十八):Pandas使用between_time()筛选出给定时间区间的数据

前言 大家好,我是阿光。 本专栏整理了《Pandas数据分析处理》,内包含了各种常见的数据处理,以及Pandas内置函数的使用方法,帮助我们快速便捷的处理表格数据。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10语言环境:python3.7编译器:PyCharmPandas版本:1.3.5N…

影响工业产品设计的主要因素

设计师对工业产品的产品外观设计主要依靠形状、图案和颜色的结合&#xff0c;创造出具有一定功能性质的新产品。在这个过程中&#xff0c;设计师需要充分利用各种因素&#xff0c;外观工业设计公司强调材料的机制和颜色。那么&#xff0c;影响产品设计的主要因素是什么呢? 一、…

IMMA~~

搬来自斯坦福的研究者提出了 IMMA, 一种利用隐空间多层图 (multiplex latent graphs) 来表征多种独立的交互类型&#xff0c;并使用一种新型的多层图注意力机制 (multiplex attention mechanism) 来描述个体间交互强度的行为及轨迹预测模型。该方法不仅大幅提升了预测的准确度&…

中小企业如何进行云灾备?

随着IT服务在企业运营和运维的影响权重日益增强&#xff0c;企业IT投入也越来越高&#xff0c;而随着云计算的逐步渗透&#xff0c;企业们逐渐将本地数据迁移到云上&#xff0c;以节省本地服务器的部署与运维等成本。如雨后新笋般冒出的中小企业&#xff0c;难以负荷高成本的本…

从 select、poll、epoll 回答IO多路复用

前言 先大概了解一下这方面的知识 IO多路复用指的是单个进程或者线程能同时监听处理多个IO请求&#xff0c; select、epoll、poll是LinuxAPI提供的复用方式。本质上是由操作系统内核缓存fd文件描述符&#xff0c; 使得单个进程线程能监视多个文件描述符。 select是将所有文件…