当前位置: 首页 > news >正文

JavaScript DOM使用

        DOM Document Object Model

        简单而言,就是JavaScript将HTML文档的各个组成部分封装为对象。

        封装的对象分别为:

        Document:整个HTML的文档对象

        Element:元素对象(也就是HTML中的标签)

        Attribute:属性对象(HTML标签中的属性)

        Text:文本对象(标签中的文本)

        Comment:注释对象

         js获得了HTML中各个组成部分的对象,就可以添加和删除HTML元素、改变HTML元素的内容、样式和对HTML DOM事件做出反应。

        DOM核心思想:将网页的所有内容当作对象进行处理,标签的所有属性在该对象上都可以找到,并且修改这个对象的属性,就会自动映射到对应标签上。

        document对象

        网页中所有内容都封装在document对象中

        document对象提供的属性和方法都是用来访问和操作网页内容的,如:document.write()

        DOM操作步骤:

        1.获取DOM元素对象

        2.操作DOM对象的属性或方法

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JavaScriptDOM使用</title>
</head>
<body><h1>我是用于测试JavaScriptDOM的h1</h1><h1>我是用于测试JavaScriptDOM的h1 2.0</h1><h2>我是用于测试JavaScriptDOM的h2</h2><script>// JS DOM// DOM:Document Object Model 文档对象模型。也就是JavaScript将HTML文档的各个组成部分封装为对象// 封装的对象分别为:// Document:整个HTML的文档对象// Element:元素对象(也就是HTML中的标签)// Attribute:属性对象(HTML标签中的属性)// Text:文本对象(标签中的文本)// Comment:注释对象// js获得了HTML中各个组成部分的对象,就可以添加和删除HTML元素、改变HTML元素的内容、样式和对HTML DOM事件做出反应// DOM核心思想:将网页的所有内容当作对象进行处理,标签的所有属性在该对象上都可以找到,// 并且修改这个对象的属性,就会自动映射到对应标签上// document对象// 网页中所有内容都封装在document对象中// document对象提供的属性和方法都是用来访问和操作网页内容的,如:document.write()// DOM操作步骤:// 1.获取DOM元素对象// 2.操作DOM对象的属性或方法// 如何获取DOM元素// 1.通过CSS的选择器获取:document.querySelector('CSS选择器'); 获取选择器匹配到的第一个元素// 2.通过CSS的选择器获取:document.querySelectAll('CSS选择器'); 获取选择器匹配到的所有元素// 获取到的所有元素,会封装到一个NodeList对象中返回,NodeList就相当于一个伪数组(有长度、索引的数组;但是不完全是数组)// 测试// HTML中有两个h1标签,通过querySelector('h1')只能获取匹配到的第一个h1let hs = document.querySelector('h1');hs.innerHTML = "我是h1,我将被修改";// 通过querySelector('h1')可以获得所有匹配的h1,存储到了NodeList中let allHs = document.querySelectorAll('h1');allHs[0].innerHTML = '我是第一个h1,我将被修改';allHs[1].innerHTML = '我是第二个h1,我将被修改';</script></body>
</html>

http://www.lryc.cn/news/489889.html

相关文章:

  • 人工智能|计算机视觉——微表情识别(Micro expression recognition)的研究现状
  • 耿恭坚守城池的方法
  • 小兔鲜项目总结——项目亮点
  • Cesium的ClearCommand的流程
  • Fakelocation Server服务器/专业版 ubuntu
  • Spring AI Alibaba 快速入门
  • Docker Registry(镜像仓库)详解
  • RTOS学习笔记---“二值信号量”和“互斥信号量”
  • Oracle-物化视图基本操作
  • (功能测试)测试报告
  • 【LeetCode每日一题】——746.使用最小花费爬楼梯
  • 程序里sendStringParametersAsUnicode=true的配置导致sql server cpu使用率高问题处理
  • Vue3 el-table 默认选中 传入的数组
  • 最后一个单词的长度
  • 2024-11-19 kron积
  • Redis ⽀持哪⼏种数据类型?适⽤场景,底层结构
  • 树莓派2 安装raspberry os 并修改成固定ip
  • 11月第3周AI资讯
  • 一次封装,解放双手:Requests如何实现0入侵请求与响应的智能加解密
  • Notepad++--在开头快速添加行号
  • Python和MATLAB示例临床因素分析
  • 嵌入式硬件实战基础篇(二)-稳定输出3.3V的太阳能电池-无限充放电
  • 【数据结构】树——链式存储二叉树的基础
  • STM32-- keil常见报错与解决办法
  • 【大数据学习 | Spark-Core】RDD的概念与Spark任务的执行流程
  • 一文读懂埋阻埋容工艺
  • mysql 数据表导出为 markdown(附 go 语言 gorm 的实际使用)
  • 本地云存储 MinIO 中修改用户密码
  • go项目中比较好的实践方案
  • 回溯法基础入门解析