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

【无标题】Web API中的DOM

1.Web API是什么?

Web API 是浏览器内置提供给 JavaScript 使用的一系列功能接口。 JS 语言本身只负责基础运算、判断、循环;想要操作页面、网络、定时器、存储、音视频,就要调用Web API

2.分类

分为DOM(文档对象模型)和BOM(浏览器对象模型)。

3.DOM

DOM(Document Object Model,文档对象模型)是浏览器将 HTML 或 XML 文档解析成的一个树状结构,它允许 JavaScript 动态访问和操作文档的内容、结构和样式。

3.1 DOM 树的结构

DOM 将文档表示为一个由节点(Node)组成的树形结构:

  • 文档节点(Document):整个文档的根节点。
  • 元素节点(Element):HTML 标签,如<div><p>
  • 文本节点(Text):元素内的文本内容。
  • 属性节点(Attribute):元素的属性,如idclass

例如,对于以下 HTML:

<!DOCTYPE html> <html> <head> <title>示例</title> </head> <body> <h1>标题</h1> <p>段落</p> </body> </html>

其 DOM 树结构大致如下:

Document └── html ├── head │ └── title │ └── "示例" └── body ├── h1 │ └── "标题" └── p └── "段落"

3.2 常用 DOM 操作 API

JavaScript 通过 DOM API 与页面交互,以下是一些核心方法:

查询元素

  • document.getElementById('id'):通过 id 获取单个元素。
  • document.querySelector('.class'):通过 CSS 选择器获取第一个匹配元素。
  • document.querySelectorAll('div'):获取所有匹配元素的列表(NodeList)。

修改内容与属性

  • element.textContent/element.innerHTML:获取或设置元素的文本/HTML 内容。
  • element.setAttribute('name', 'value'):设置元素属性。
  • element.style.样式属性 = 'value':修改元素样式。

创建与插入节点

  • document.createElement('div'):创建新元素节点。
  • parent.appendChild(child):将子节点插入父节点末尾。
  • parent.insertBefore(newNode, referenceNode):在参考节点前插入新节点。

事件处理

  • element.addEventListener('click', handler):为元素添加事件监听器。
  • element.removeEventListener('click', handler):移除事件监听器。

3.3 简单示例

以下代码演示了如何查询元素并修改其内容:

// 获取 id 为 "title" 的元素 const titleElement = document.getElementById('title'); // 修改其文本内容 titleElement.textContent = '新的标题'; // 修改其样式 titleElement.style.color = 'blue'; // 添加点击事件 titleElement.addEventListener('click', function() { alert('标题被点击了!'); });

3.4 总结

DOM 是 Web 开发的核心,它建立了文档与 JavaScript 之间的桥梁。理解 DOM 树的结构并掌握常用的 DOM 操作 API,是进行动态网页交互和构建现代 Web 应用的基础。

http://www.jsqmd.com/news/1405779/

相关文章:

  • 人像动画制作教程:用 LivePortrait 三步让老照片开口说话
  • 新手 OpCore-Simplify 入门教程:把黑苹果 EFI 制作时间从几天压缩到半小时
  • ESP32开发从零到联网:Arduino-ESP32核心库完整入门指南
  • Libre Barcode实战指南:免费开源的条码生成方案
  • 点喷加盟店选址有什么讲究?三个原则要记牢 - 天下观知
  • 掌握AI教材写作技巧,专业教材编写不再愁,高效完成编写任务 - AI写论文
  • 算法题中排序题的思路、模板与cmp/qsort用法详解
  • 2026读懂大额事故出险报告实操教程,多平台报告对比,乐爱查车标注结构性损伤 - 资讯报道
  • 在AI信息噪音里,真正拉开开发者差距的技能鸿沟
  • 2026年大语言模型分类难题有解!“弱”模型“想象”分类法更经济
  • 消杀公司需要具备哪些资质才能投标?苏州木渎虫控服务商选型参考 - 康一科技
  • 北京东城区2026奢侈品回收白皮书发布,八步标准化流程首次对外公示 - 大牌科普时报
  • 跨平台翻译软件 pot-desktop 上手实战:让划词与 OCR 变成肌肉记忆
  • 普通汽修店师傅能学会点喷技术吗?标准化就是答案 - 天下观知
  • GroundingDINO 在土星云 SE110S 系列上的部署与实战
  • 点喷加盟店开业初期怎么宣传?三招快速打开局面 - 天下观知
  • SpaceX 600 亿美元收购 Cursor,Cursor 将参与 Grok AI 项目
  • PCO 企业规范四害消杀全流程操作,需遵循哪些行业合规标准?苏州木渎选型参考 - 康一科技
  • 网页媒体资源捕获神器:猫抓浏览器扩展安装与使用完整指南
  • DeepSeek Harness 架构拆解:没有“核心“的 Agent 运行时,“万物皆插件“是怎么做到的
  • 基于SpringBoot的仁爱医院信息管理系统的实现(源码+lw+部署文档+讲解等)
  • 告别千兆瓶颈:RTL8125驱动安装全流程与2.5G跑满实战指南
  • 奢二网实操攻略:西城区钻石饰品迭代更新服务详情解读 - 大牌科普时报
  • 2026 广州黄金回收避坑指南,奢二网拆解虚假高价陷阱做好闲置黄金变现 - 每日小知识
  • 北京东城区香奈儿CF黑金和粉色回收价差30%的数据分析 - 大牌科普时报
  • Gemini 3.7 Flash 今日向订阅用户开放:遵循指令、理解意图能力升级
  • 微信聊天记录备份与导出终极指南:用WeChatMsg把十年对话永久存下来
  • 谷歌允许去除AI内容可见水印,不可见标记仍可验证生成来源
  • 网易孵化谦合益邦获超20亿B轮融资,3D存算一体芯片赛道竞争再升级
  • Ventoy 多系统启动盘制作指南:如何用一个U盘装下所有系统镜像