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

HTML DOM outerHTML 属性

目录

语法

例子

注意

应用



 DOM 接口的outerHTML属性获取描述元素(包括其后代)的序列化 HTML 片段。它也可以设置为用从给定字符串解析的节点替换元素。

要仅获取元素内容的 HTML 表示形式或替换元素的内容,请使用 innerHTML 属性

语法

let content = element.outerHTML;

返回时,内容包含描述元素及其后代的序列化 HTML 片段。

element.outerHTML = content;

将元素替换为通过使用元素的父作为片段解析算法的上下文节点解析字符串内容生成的节点。

例子

获取一个元素的 outerHTML 属性的值:

// HTML:
/*
<div id="d"><p>Content</p><p>Further Elaborated</p>
</div>
*/const d = document.getElementById("d");
console.log(d.outerHTML);/*字符串 '<div id="d"><p>Content</p><p>Further Elaborated</p></div>'被显示到控制台窗口
*/

通过设置 outerHTML 属性来替换节点:

// HTML:
/*
<div id="container"><div id="d">This is a div.</div>
</div>
*/let container = document.getElementById("container");
let d = document.getElementById("d");console.log(container.firstChild.nodeName);
// logs "div"d.outerHTML = "<p>This paragraph replaced the original div.</p>";console.log(container.firstChild.nodeName);
// logs "P"/*#d div 不再是文档树的一部分,新段替换了它。(不在页面中显示,但仍然在内存中)
*/

注意

如果元素没有父元素,即如果它是文档的根元素,则设置其 outerHTML 属性将抛出一个带有错误代码 NO_MODIFICATION_ALLOWED_ERR 的 DOMException 。例如:

document.documentElement.outerHTML = "test";
// 抛出一个 DOMException

此外,虽然元素将在文档中被替换,设置了 outerHTML 属性的变量仍将保持对原始元素的引用:

let p = document.getElementsByTagName("p")[0];
console.log(p.nodeName);
// 显示:"P"
p.outerHTML = "<div>This div replaced a paragraph.</div>";console.log(p.nodeName);
// 仍然为:"P";

应用

<!DOCTYPE html>
<html><body><h1>outerHTML</h1><p>单击按钮将标题从 h1 更改为 h3。</p><button onclick="myFunction()">Change Header</button><script>function myFunction() {var x = document.getElementsByTagName("h1")[0];x.outerHTML = "<h3>您更改了整个标题元素及其内容!</h3>";// 此处还是 h3 元素, 虽然元素将在文档中被替换,设置了 outerHTML 属性的变量仍将保持对原始元素的引用:console.log(x);}</script></body></html>

http://www.dtcms.com/a/566053.html

相关文章:

  • SpringBoot 登录验证码
  • Spring Al Alibaba
  • 陕西民盛建设有限公司网站pageadmin的最新版本
  • 如何自己做个网站网站xml
  • 易语言怎么制作网站临淄辛店今天招聘信息
  • 相亲网站源码php模版营销网站的概念
  • css文档流
  • C#进阶11:C#局部路径规划算法_DWA
  • 基于Vue人脸识别的智慧课堂学习行为分析系统f36fy939(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • Kotlin线程池newFixedThreadPoolContext与约束协程运行的线程数量limitedParallelism
  • 网站年报公示怎么做站外seo是什么
  • 制作网站app黑龙江省城乡和建设厅网站
  • 网站备案密码格式厦门比较有名的设计公司
  • 网站首页横版图怎么做建设网站如何给页面命名
  • JxBrowser 8.13.0 版本发布啦!
  • html实现简历信息填写界面
  • 坪地做网站哪个网站做生鲜配送
  • AI决策工具的技术支持底层逻辑:从原理到落地的全景解析
  • 个人能免费做网站wordpress建站工具
  • MATLAB遗传算法优化RBF网络连接权与网络结构的实现方法
  • 网站开发工程师的经验公司创建一个网站需要多少钱
  • 集成Scrapy与异步库:Scrapy+Playwright自动化爬取动态内容
  • Vue3 插件(可选独立模块复用)
  • 电容的 DC 偏压特性
  • 建网站支持设备是什么意思做网站界面尺寸
  • 什么是 webSocket?攻击面、安全风险与测试要点
  • 网站设计经典案例欣赏电商网站建设与运营
  • 【开题答辩全过程】以 废品回收小程序的设计与实现为例,包含答辩的问题和答案
  • Linux 日志查看与分析常用命令总结
  • 上海公司做网站专业网站制作的公司