JavaScript(14)——DOM

Web API

作用:就是使用JS去操作html和浏览器

分类:DOM(文档对象模型)、BOM(浏览器对象模型)

DOM

DOM是用来呈现以及与任意HTML或XML文档交互的API,简单来说就是操作网页的内容。

DOM树

将HTML文档以树状结构直观的表现出来,称之为文档树或DOM树。直观的体现了标签与标签之间的关系。

DOM对象

DOM对象 :浏览器根据html标签生成的JS对象

  • 所有的标签属性都可以在这个对象上面找到
  • 修改这个对象的属性会自动映射到标签身上

核心思想:将网页当做对象处理

获取DOM元素

根据CSS选择器来获取DOM元素,查找DOM元素就是利用JS选择页面中标签元素

1.选择匹配的第一个元素

document.querySelector('css选择器')

返回值:css选择器匹配的第一元素,一个 HTMLElement对象,如果没有匹配到,则返回null。

<body><div class="box">选择第一个元素</div><div class="box">第二个元素</div><script>const box = document.querySelector('div')console.dir(box)</script>
</body>

 

 

2.选择匹配的多个元素

语法:

document.querySelectorAll('css选择器')

 返回值:css选择器匹配的NodeList对象集合

<body><ul><li>1</li><li>2</li><li>3</li></ul><script>const lis = document.querySelectorAll('ul li')console.dir(lis)</script>
</body>

得到的是一个伪数组,有长度和索引号,没有pop()push()等方法。想得到里面的每一个对象,则需要遍历(for)的方式获得。

操作元素内容

innerText

将文本内容添加/更新到任意标签位置

显示纯文本,不解析标签

  <div class="box">我是内容</div><script>const box = document.querySelector('.box')console.log(box.innerText);//直接获取元素box.innerText = '<strong>我是新内容</strong>'//修改文字内容</script>

 

 


innerHTML 

会解析标签,多标签建议使用模板字符

 将上面innerText修改成innerHTML。

 

 操作元素属性

 常用属性:还可以通过JS设置或修改标签元素属性,比如通过src更换图片。

语法:对象.属性=值

样式属性 :通过style属性操作css

语法:对象.style.样式属性 = 值  

 如果是css中有短横线的例如background-color就按小驼峰命名法backgroundColor

 

 

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

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

相关文章

计算机视觉与图像分类:技术原理、应用与发展前景

引言 随着科技的不断进步&#xff0c;计算机视觉逐渐成为了人工智能领域的重要分支之一。计算机视觉旨在让计算机具备“看懂”图像和视频的能力&#xff0c;从而理解和分析视觉信息。作为计算机视觉中的一个关键任务&#xff0c;图像分类涉及将输入的图像归类到预定义的类别中&…

[RK3588][Android12] Android->OTA包超过4个G导致打包失败

测试平台 Platform: RK3588 OS: Android12 问题说明&#xff1a; 有的客户需要往系统中内置大量apk&#xff0c;这样就导致最终打包的OTA包超过4个G&#xff0c;从而导致打包OTA的时候报错&#xff1a;Zipfile size would require ZIP64 extensions 解决方法&#xff1a; 可能…

解决python bug(关于Paddle分布式训练):Exit with signal X

解决python bug[关于Paddle分布式训练]&#xff1a;Exit with signal X 多卡训练(需根据自己需求进行更改)单卡训练(需根据自己需求进行更改) 本人在通过Paddle实现多目标检测跟踪时遇到了一个小bug。 Exit with signal X 后来通过查询相关资料得知&#xff0c;引发这个bug的原…

学习记录day18——数据结构 算法

算法的相关概念 程序 数据结构 算法 算法是程序设计的灵魂&#xff0c;结构式程序设计的肉体 算法&#xff1a;计算机解决问题的方法护额步骤 算法的特性 1、确定性&#xff1a;算法中每一条语句都有确定的含义&#xff0c;不能模棱两可 2、有穷性&#xff1a;程序执行一…

11 Vue 项目插件

UI 插件 Element-UI – Vue2 PC端组件库Element Plus – Vue3 PC端组件库Vant 2 – Vue2移动端组件库Vant 3 – Vue3 移动端组件库vue-quill-editorvue – Vue富文本编辑器nprogress – 进度条插件vue-teble-with-tree-gridvue – 表格树型展示插件screenfull – 页面全屏插件e…

35_YOLOX网络详解

1.1 简介 YOLOX是YOLO系列&#xff08;You Only Look Once&#xff09;目标检测模型的一个最新变种&#xff0c;由阿里云团队和旷视科技在2021年提出。YOLO系列以其快速、准确的目标检测能力而闻名&#xff0c;而YOLOX在此基础上进行了多方面的改进和优化&#xff0c;旨在提供…

机器学习数学基础(2)--最大似然函数

声明&#xff1a;本文章是根据网上资料&#xff0c;加上自己整理和理解而成&#xff0c;仅为记录自己学习的点点滴滴。可能有错误&#xff0c;欢迎大家指正。 在机器学习和统计学领域中&#xff0c;似然函数&#xff08;Likelihood Function&#xff09;是一个至关重要的概念。…

05 ES6中的Set类型

ES6 中引入的 Set 对象是一种集合数据结构&#xff0c;它存储不重复的值&#xff0c;类似于数组&#xff0c;但数组可以包含重复的元素&#xff0c;而 Set 不会。以下是 Set 对象的一些关键特性和常用方法&#xff1a; 特性 唯一性&#xff1a;Set 中的每个值必须是唯一的&am…

AIGC的神秘面纱——利用人工智能生成内容改变我们的生活

近年来&#xff0c;人工智能生成内容&#xff08;AIGC&#xff09;正在迅速改变我们与数字世界互动的方式。从自动写作到图像生成&#xff0c;AIGC正逐渐走进我们的日常生活。它不仅提高了效率&#xff0c;还为创意和商业活动带来了新的可能性。让我们一起来探索AIGC的世界&…

解读 IP 地址定位

你是否好奇众多平台推出的 IP 归属地功能是如何确定的位置&#xff1f;其实这些说起来并不难。接下来让我来给你们说一下其中的“奥秘”吧~ 一、IP 定位背后的原理 首先&#xff0c;从“IP 地址”开始。因为每个联网设备在接入网络时都会被分配一个独一无二的 IP 地址。根据这…

iptables规则设置

宿主机iptables策略实施 #基础策略 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT && \ iptables -A INPUT -p icmp -j ACCEPT && \ iptables -A INPUT -p udp -j ACCEPT && \ iptables -A INPUT -i lo -j ACCEPT #允许某个IP地址…

通信原理思科实验三:无线局域网实验

实验三 无线局域网实验 一&#xff1a;无线局域网基础服务集 实验步骤&#xff1a; 进入物理工作区&#xff0c;导航选择 城市家园; 选择设备 AP0&#xff0c;并分别选择Laptop0、Laptop1放在APO范围外区域 修改笔记本的网卡&#xff0c;从以太网卡切换到无线网卡WPC300N 切…

3.多租户调研1

https://gitee.com/xiaoqiangBUG/hello-ruoyi-cloud.git 1.mybatis plus 的插件 TenantLineInnerInterceptor 是 MyBatis Plus 框架中的一个拦截器&#xff0c;它用于实现多租户系统的数据隔离。在多租户应用中&#xff0c;不同的租户应该只能访问到自己的数据&#xff0c;而…

TCP网络socket编程(面向连接)

Tcp面向链接、面向字节流和文件的读写非常类似&#xff08;&#xff09;&#xff1a;客户端创建套接字主动建立连接&#xff0c;服务器监听套接字一直等待连接的到来&#xff0c;监听到一个&#xff0c;就创建一个新的套接字用于IO 服务器&#xff1a; 创建套接字&#xff1a…

【数据结构】单链表面试题(Java + 力扣 + 详解)

&#x1f387;&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了 博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳&#xff0c;欢迎大佬指点&#xff01; 人生格言: 当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友…

Python—面向过程编程,详细讲解(类和实例,初始化函数,类中封装数据与操作)

1.类和实例 类&#xff1a;类别 实例&#xff08;对象&#xff09;&#xff1a;类型塑造出来的某一个具体的内容 isinstance(对象&#xff0c;类) 返回一个对象是否是一个类的实例 # 声明一个整数类的实例10 a int(10) # a 10 print(type(a), isinstance(a, int)) a flo…

Android5.1 NAT功能不生效问题

在Android5.1系统上的adb shell或调试串口SHELL命令行下运行相应的iptables命令&#xff0c;NAT功能仍不生效&#xff0c;但同样的命令在Android4.4和4.2上验证是成功的&#xff0c;于是通过iptables -t nat -nvL和iptables -nvL命令对比&#xff0c;并未发现区别&#xff0c;后…

动态代理更改Java方法的返回参数(可用于优化feign调用后R对象的统一处理)

动态代理更改Java方法的返回参数&#xff08;可用于优化feign调用后R对象的统一处理&#xff09; 需求原始解决方案优化后方案1.首先创建AfterInterface.java2.创建InvocationHandler处理代理方法3. 调用 实际运行场景拓展 需求 某些场景&#xff0c;调用别人的方法&#xff0…

React: class 和 style

一、class 1、在react中使用className属性来绑定类名 <div className"header flex-middle-middle">添加2个类名 </div>2、动态添加类名 <div className{item ${nameactive ? active : }}>动态添加active类名 </div>二、style 1、react中内…

Chapter 15 Python函数进阶

欢迎大家订阅【Python从入门到精通】专栏&#xff0c;一起探索Python的无限可能&#xff01; 文章目录 前言一、函数多返回值二、函数的多种传参方式三、匿名函数 前言 在Python中&#xff0c;函数是组织代码、提高重用性与可读性的基本构建块。随着程序逻辑的复杂性增加&…