JavaScript HTML DOM

JavaScript DOM 完全指南 – 编程小白必备

JavaScript HTML DOM 完全指南

编程小白的通俗易懂知识点汇总

DOM(文档对象模型)是JavaScript与网页内容交互的核心,掌握它你就能让网页动起来!

一、DOM 是什么?

DOM (Document Object Model) 是网页的编程接口,它将整个HTML文档表示为一个树形结构。

💡 大白话解释:把网页想象成一棵大树,HTML标签就是树的枝干,内容就是叶子。DOM就是这棵树的完整模型。

关键概念:

  • 每个HTML元素都是一个节点(node)
  • 整个文档是一个文档节点(document)
  • HTML元素是元素节点(element)
  • 元素内的文本是文本节点(text)
  • 属性是属性节点(attribute)

示例HTML结构:

<!DOCTYPE html> <html> <head> <title>我的网页</title> </head> <body> <h1 id=”title”>欢迎学习DOM</h1> <p>这是段落文本</p> </body> </html>

对应的DOM树结构:

- document (文档节点) - html (元素节点) - head (元素节点) - title (元素节点) - "我的网页" (文本节点) - body (元素节点) - h1 (元素节点) - id="title" (属性节点) - "欢迎学习DOM" (文本节点) - p (元素节点) - "这是段落文本" (文本节点)

二、如何获取HTML元素?

要操作元素,首先需要找到它们!JavaScript提供了多种方法:

// 1. 通过ID获取(返回单个元素) let titleElement = document.getElementById(‘title’); // 2. 通过类名获取(返回元素集合) let items = document.getElementsByClassName(‘item’); // 3. 通过标签名获取(返回元素集合) let paragraphs = document.getElementsByTagName(‘p’); // 4. 通过CSS选择器获取(返回第一个匹配元素) let box = document.querySelector(‘.container’); // 5. 通过CSS选择器获取所有匹配元素(返回NodeList) let buttons = document.querySelectorAll(‘button’);

⚠️ 注意:getElementById和querySelector返回单个元素,其他方法返回集合

试试看:

原始标题内容

这是原始段落内容。

三、如何操作元素内容?

获取元素后,你可以修改它的内容和属性:

1. 修改HTML内容

// 修改元素内部的HTML element.innerHTML = “<strong>新内容</strong>”; // 修改元素内部的纯文本 element.textContent = “新文本内容”;

🔍 区别:
innerHTML – 可以解析HTML标签
textContent – 只设置纯文本,更安全

2. 操作元素属性

// 获取属性 let id = element.id; let src = element.getAttribute(“src”); // 设置属性 element.id = “newId”; element.setAttribute(“src”, “new-image.jpg”); // 移除属性 element.removeAttribute(“title”);

动手尝试:

示例图片

四、如何修改CSS样式?

使用JavaScript可以动态改变元素的样式:

// 直接修改单个样式 element.style.color = “blue”; element.style.fontSize = “24px”; // 修改多个样式 element.style.cssText = “color: red; background: yellow; padding: 10px;”; // 添加/移除/切换CSS类 element.classList.add(“new-class”); element.classList.remove(“old-class”); element.classList.toggle(“active-class”); // 获取计算样式(最终应用的样式) let computedStyle = window.getComputedStyle(element); let width = computedStyle.getPropertyValue(“width”);

📌 注意:JS中的CSS属性名使用驼峰命名法(如fontSize),而不是CSS中的连字符(font-size)。

样式修改演示:

这个盒子的样式可以通过JavaScript改变

五、事件处理 – 让网页交互起来

事件是用户或浏览器执行的交互动作(如点击、鼠标移动、按键等)。

添加事件监听器

// 方法一:HTML属性(不推荐) <button onclick=”handleClick()”>点击我</button> // 方法二:DOM属性(只能绑定一个事件) element.onclick = function() { alert(“按钮被点击了!”); }; // 方法三:addEventListener()(推荐,可添加多个) element.addEventListener(“click”, function(event) { console.log(“按钮被点击了”, event); });

常见事件类型:

  • 鼠标事件:click, dblclick, mouseover, mouseout, mousemove
  • 键盘事件:keydown, keyup, keypress
  • 表单事件:submit, change, input, focus, blur
  • 窗口事件:load, resize, scroll

事件交互演示:

在此区域移动鼠标或点击

六、创建、添加和删除元素

动态修改页面内容:

1. 创建新元素

// 创建一个新的div元素 let newDiv = document.createElement(“div”); // 设置元素属性和内容 newDiv.id = “new-element”; newDiv.textContent = “我是新创建的元素!”;

2. 添加元素到DOM

// 添加到父元素的末尾 parentElement.appendChild(newDiv); // 插入到某个元素前面 parentElement.insertBefore(newDiv, referenceElement); // 替换现有元素 parentElement.replaceChild(newDiv, oldElement);

3. 删除元素

// 方法一:通过父元素删除 parentElement.removeChild(elementToRemove); // 方法二:元素自己删除自己 elementToRemove.remove();

动态元素操作:

总结:DOM是JavaScript操作网页的核心

通过DOM,你可以动态访问和修改网页内容、结构和样式,实现丰富的用户交互体验。

记住关键三步:获取元素 → 添加事件监听 → 执行操作

继续练习,你将成为DOM操作高手!

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部