element.insertAdjacentHTML() 插入 HTML

最后更新:2026-09-09

element.insertAdjacentHTML() 插入 HTML

insertAdjacentHTML 在指定位置插入 HTML 字符串,不覆盖已有内容。比 innerHTML 更灵活且不影响已有子元素。

分类DOM 操作
ES 版本DOM

📝 语法

元素.insertAdjacentHTML('beforeend', '<p>新内容</p>');

⚙️ 参数

position插入位置:beforebegin/afterbegin/beforeend/afterend。
html要插入的 HTML 字符串。

返回值:undefined。

是否修改原值:是(原地修改)

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

(HTML 已插入)
💡 提示 insertAdjacentHTML 不像 innerHTML 那样覆盖已有内容——适合追加。
⚠️ 警告 与 innerHTML 一样有 XSS 风险——不要插入未转义的用户输入。

🌐 浏览器支持

浏览器 ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
element.insertAdjacentHTML() v1 v12 v1 v1 v1
所有现代浏览器均支持
更多实战案例即将上线,敬请期待。

📚 相关教程

❓ 常见问题

QinsertAdjacentHTML 和 innerHTML 的区别?
AinsertAdjacentHTML 不覆盖已有内容且可以指定 4 个插入位置;innerHTML 会替换全部内容。
Qbeforeend 和 afterend 的区别?
Abeforeend 在元素内部末尾插入(成为子元素);afterend 在元素外部后面插入(成为兄弟)。
Q四个位置分别是什么?
Abeforebegin(元素前)、afterbegin(内部开头)、beforeend(内部末尾)、afterend(元素后)。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏