JavaScript 中的 outerHTML 属性
outerHTML
是一个 JavaScript 属性,允许你获取和设置元素的 HTML。例如,如果你有一个如下的 HTML 标签,那么使用 outerHTML
属性你会得到 <div> </div>
作为输出。
<div>Text</div>
如果 div
具有 class
或 id
之类的属性,你将使用 HTML 获得所有此类详细信息。outerHTML
用于返回或设置元素的 HTML。
与此相反的是 innerHTML
属性,它设置或返回标签中存在的文本。在这种情况下,innerHTML
属性将返回包含在 div
HTML 标记中的单词 Text
。
让我们举一个例子,说明如何使用 outerHTML
属性获取和设置元素的 HTML。我们目前在我们的 HTML 中有一个单一的 div
元素,其 class
为 oldElement
。
<body>
<div class="oldElement">Text</div>
</body>
我们在 div
元素中添加了一些文本。首先,我们将看到如何使用 outerHTML
属性获取上述元素的 HTML,然后我们将看到如何用不同的 HTML 元素替换或设置这个 HTML div
。
要获取 div
元素的 HTML,我们首先必须使用其 class
属性将 div
的引用存储在 JavaScript 代码中,并使用 getElementsByClassName()
方法,这是 DOM API 的一部分.
<!DOCTYPE html>
<html>
<body>
<div class="oldElement">This is an old element.</div>
</body>
<script>
var oldElement = document.getElementsByClassName('oldElement')[0];
console.log(oldElement.outerHTML)
</script>
</html>
由于我们使用其类名访问元素,因此我们还必须在末尾使用 [0]
,因为 getElementsByClassName()
返回一个数组,因为我们的 DOM 中只有一个具有该类名的元素。
因此,我们将访问数组的 [0]
元素。然后我们将该元素存储在 oldElement
变量中。
要获取存储在 oldElement
变量中的该元素的 HTML,我们将在该变量上使用 outerHTML
,如上所示的代码在控制台上打印它。
输出:
现在让我们看看如何为相同的 div
元素设置 HTML,我们已经使用 outerHTML
属性将其存储在 oldElement
变量中。
我们将使用赋值 (=
) 运算符;由于我们想为这个元素设置或赋值,我们将使用赋值(=
)运算符。
outerHTML
只接受字符串形式的 HTML 元素。因此,我们使用 outerHTML
属性将 h1
标记作为包含一些文本的字符串分配给 oldElement
变量。
<!DOCTYPE html>
<html>
<body>
<div class="oldElement">This is an old element.</div>
</body>
<script>
var oldElement = document.getElementsByClassName('oldElement')[0];
oldElement.outerHTML = "<h1>This is an new element.</h1>";
</script>
</html>
这将用这个新的 HTML 元素替换整个 div
元素及其值。如果你查看 DOM 树,你会看到 div
HTML 元素已替换为 h1
HTML 元素。
有关详细信息,请参见下图。
要获取任何元素的 HTML,我们使用 outerHTML
属性。此属性返回元素的外部 HTML。它可以用一个新的 HTML 元素替换一个 HTML 元素,只是将新的 HTML 元素作为字符串绕过该属性。
相关文章
在 Angular 中上传文件
发布时间:2023/04/14 浏览次数:71 分类:Angular
-
本教程演示了如何在 Angular 中上传任何文件。我们还将介绍如何在文件上传时显示进度条,并在上传完成时显示文件上传完成消息。
Angular 中所有 Mat 图标的列表
发布时间:2023/04/14 浏览次数:91 分类:Angular
-
本教程演示了在哪里可以找到 Angular 中所有 Mat 图标的列表以及如何使用它们。
Angular 2 中的复选框双向数据绑定
发布时间:2023/04/14 浏览次数:139 分类:Angular
-
本教程演示了如何一键标记两个复选框。这篇有 Angular 的文章将着眼于执行复选框双向数据绑定的不同方法。
在 AngularJS 中重新加载页面
发布时间:2023/04/14 浏览次数:142 分类:Angular
-
我们可以借助 windows.location.reload 和 reload 方法在 AngularJS 中重新加载页面。
在 AngularJs 中设置 Select From Typescript 的默认选项值
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程提供了在 AngularJs 中从 TypeScript 中设置 HTML 标记选择的默认选项的解释性解决方案。
在 AngularJS 中启用 HTML5 模式
发布时间:2023/04/14 浏览次数:150 分类:Angular
-
本文讨论如何在 AngularJS 应用程序上启用带有深度链接的 HTML5 模式。
在 AngularJs 中加载 spinner
发布时间:2023/04/14 浏览次数:107 分类:Angular
-
我们将介绍如何在请求加载时添加加载 spinner,并在 AngularJs 中加载数据时停止加载器。
在 Angular 中显示和隐藏
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程演示了 Angular 中的显示和隐藏。在开发商业应用程序时,我们需要根据用户角色或条件隐藏一些数据。我们必须根据该应用程序中的条件显示相同的数据。
在 Angular 中下载文件
发布时间:2023/04/14 浏览次数:104 分类:Angular
-
本教程演示了如何在 angular 中下载文件。我们将介绍如何通过单击按钮在 Angular 中下载文件并显示一个示例。