JS学习日记(webAPI—DOM)

前言

接下来,我们正式进入了JS的正片,没想到一转眼更新这么多了,最开始写这些是为了回顾自己学习的知识,也为了供各位想学习的人提供便利,总之,感谢各位的关注和喜爱,我会继续努力更新的!今天的内容是对webAPI的一些简单介绍,喜欢就点赞关注吧,欢迎在评论区讨论学习

什么是webAPI

JavaScript Web APIs 是一组由浏览器提供的接口,允许开发者使用 JavaScript 与浏览器和用户设备进行交互。这些 API 提供了对浏览器功能(如 DOM 操作、事件处理、HTTP 请求等)的访问,使得开发者能够创建动态和交互式的网页应用。

DOM

DOM (Document Object Model) API,DOM API 允许 JavaScript 访问和操作网页的文档结构。通过 DOM API,开发者可以创建、修改和删除 HTML 元素和属性,以及响应用户事件,是JavaScript里非常重要的API

JavaScript 复制代码
// 获取元素
const element = document.getElementById('myElement');

// 修改内容
element.textContent = 'Hello, World!';

// 添加事件监听器
element.addEventListener('click', () => {
  alert('Element clicked!');
});

简单来说DOM就是让你通过js的方式操控浏览器内容(比如监听事件,这就是DOM能做到的,很多网页特效都是用DOM做的)

DOM树

DOM树(Document Object Model Tree)是浏览器用来表示和操作HTML或XML文档的树形数据结构。DOM树将文档的每个元素、属性、文本片段等表示为一个节点(Node),这些节点按照文档的层级结构组织成树形结构。

DOM树的结构

1.文档节点(Document Node):树的根节点,代表整个文档。

2.元素节点(Element Node):代表HTML或XML文档中的元素,如"body"、"div"、"p"等。

3.属性节点(Attribute Node):代表元素节点的属性,如id、class、href等。

4.文本节点(Text Node):代表元素节点中的文本内容。

代码对比

go 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>Sample Page</title>
</head>
<body>
    <h1>Hello, World!</h1>
    <p>This is a <a href="#">sample</a> page.</p>
</body>
</html>

DOM树里

go 复制代码
Document
│
├── html
│   ├── head
│   │   └── title
│   │       └── "Sample Page"
│   └── body
│       ├── h1
│       │   └── "Hello, World!"
│       └── p
│           ├── "This is a "
│           ├── a
│           │   ├── href="#"
│           │   └── "sample"
│           └── " page."

总结

今天的笔记就到这了,喜欢就点赞关注吧

相关推荐
HelloReader11 分钟前
Isolation Pattern(隔离模式)在前端与 Core 之间加一道“加密网关”,拦截与校验所有 IPC
前端
兆子龙1 小时前
从 float 到 Flex/Grid:CSS 左右布局简史与「刁钻」布局怎么搞
前端·架构
YukiMori231 小时前
一个有趣的原型继承实验:为什么“男人也会生孩子”?从对象赋值到构造函数继承的完整推演
前端·javascript
_哆啦A梦1 小时前
Vibe Coding 全栈专业名词清单|设计模式·基础篇(创建型+结构型核心名词)
前端·设计模式·vibecoding
百里静修1 小时前
一个 Hook 拦截所有 AJAX 请求:ajax-hooker 使用指南与原理
前端
摸鱼的春哥1 小时前
惊!黑客靠AI把墨西哥政府打穿了,海量数据被黑
前端·javascript·后端
小兵张健1 小时前
Playwright MCP 截图标注方案调研(推荐方案1)
前端·javascript·github
小兵张健2 小时前
AI 页面与交互迁移流程参考
前端·ai编程·mcp
小兵张健3 小时前
掘金发布 SOP(Codex + Playwright MCP + Edge)
前端·mcp
小兵张健3 小时前
Mac 上 Antigravity 无法调用 browser_subagent?一次 400 报错排查记录
前端