HTML DOM - 修改 HTML 内容的方法

修改 HTML 内容的方法

通过 JavaScript 操作 DOM(文档对象模型)可以动态修改 HTML 内容。以下是几种常见的方法:

innerHTML 属性 使用 innerHTML 属性可以获取或设置元素的 HTML 内容。这种方法会解析字符串中的 HTML 标签。

javascript 复制代码
document.getElementById("demo").innerHTML = "<strong>新内容</strong>";

textContent 属性 textContent 属性用于获取或设置元素的文本内容,不会解析 HTML 标签。

javascript 复制代码
document.getElementById("demo").textContent = "纯文本内容";

innerText 属性 innerText 属性与 textContent 类似,但会忽略隐藏元素的内容。

javascript 复制代码
document.getElementById("demo").innerText = "可见文本内容";

修改 HTML 属性

除了内容,还可以通过 DOM 修改 HTML 元素的属性。

setAttribute 方法 使用 setAttribute 方法可以设置元素的属性值。

javascript 复制代码
document.getElementById("myImage").setAttribute("src", "new-image.jpg");

直接修改属性 某些属性可以直接通过元素对象修改。

javascript 复制代码
document.getElementById("myImage").src = "new-image.jpg";

创建和插入新元素

可以通过 DOM 动态创建新元素并插入到文档中。

createElement 方法 使用 createElement 方法创建新元素。

javascript 复制代码
var newElement = document.createElement("div");
newElement.innerHTML = "新创建的 div";

appendChild 方法 使用 appendChild 方法将新元素添加到父元素的末尾。

javascript 复制代码
document.body.appendChild(newElement);

insertBefore 方法 使用 insertBefore 方法将新元素插入到指定元素之前。

javascript 复制代码
var parent = document.getElementById("parent");
var referenceElement = document.getElementById("reference");
parent.insertBefore(newElement, referenceElement);

删除和替换元素

可以通过 DOM 删除或替换现有元素。

removeChild 方法 使用 removeChild 方法从父元素中删除子元素。

javascript 复制代码
var parent = document.getElementById("parent");
var child = document.getElementById("child");
parent.removeChild(child);

replaceChild 方法 使用 replaceChild 方法替换子元素。

javascript 复制代码
var parent = document.getElementById("parent");
var oldChild = document.getElementById("oldChild");
var newChild = document.createElement("div");
newChild.innerHTML = "新内容";
parent.replaceChild(newChild, oldChild);

修改 CSS 样式

通过 DOM 可以动态修改元素的 CSS 样式。

style 属性 使用 style 属性直接修改元素的样式。

javascript 复制代码
document.getElementById("demo").style.color = "red";
document.getElementById("demo").style.fontSize = "20px";

className 属性 使用 className 属性修改元素的类名。

javascript 复制代码
document.getElementById("demo").className = "new-class";

classList 属性 使用 classList 属性可以更方便地添加、删除或切换类名。

相关推荐
Pedantic8 小时前
SwiftUI 手势层级(Gesture Hierarchy)详解
前端
飘尘8 小时前
前端转型全栈(Java后端)的快速上手指引
前端·后端·全栈
一颗烂土豆9 小时前
Meshopt 压缩深度解析,为什么它比 Draco 更快
前端·javascript·webgl
浏览器工程师10 小时前
AI Agent 接浏览器任务,先别让它一路点到底
前端·后端
雨季mo浅忆10 小时前
VSCode自动格式化三要素
前端
爱勇宝10 小时前
深扒 Anthropic 1680 位工程师简历:应届生几乎没机会,AI 公司最缺的不是博士
前端·后端·程序员
kyriewen11 小时前
同事每天催我 Code Review,我写了个脚本让 AI 替我 review PR——现在他反过来催 AI 了
前端·javascript·ai编程
user205855615181313 小时前
Windows 项目安装时报 `node-sass` 错误,如何快速处理
前端
LiaCode13 小时前
Redis 在生产项目的使用
前端·后端
LiaCode13 小时前
一天学完 redis 的爽翻版核心知识总结
前端·后端