此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

HTMLElement.outerText

基线 广泛可用

自 2022年3月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

HTMLElement 接口的 outerText 属性返回与 HTMLElement.innerText 相同的值。当用作 setter 时,它会用给定的文本替换整个当前节点(这与 innerText 不同,后者替换当前节点的内部内容)。

请参阅 HTMLElement.innerText 以了解更多信息和有关两个属性用作 getter 的示例。

一个表示元素及其后代元素的渲染的文本内容的字符串。

如果这个元素本身没有被渲染(例如,从文档中分离或是从视图中隐藏),返回值与 Node.textContent 属性的返回值相同。

当用作 setter 时,它会用给定的文本替换当前节点,并将任何换行符转换为 <br> 元素。

示例

这个例子突出了 outerTextinnerText 在用作 setter 时的根本区别(它们用做 getter 时行为完全一致)。

备注:这个示例是 innerText 和 outerText 有什么区别?(Stack overflow)的修订后的版本,由 codingintrigue 发起,基于 CC BY-SA 3.0 许可证发布。

考虑包含如下 HTML 代码的页面:

html
<div>
  <p>原始内容</p>
</div>

outerText 替换了整个选中的元素,因此 JavaScript 语句 p.outerText = "整个元素已替换" 替换了整个选中的 p 元素:

html
<div>整个元素已替换</div>

相比之下,p.innerText = "元素内容已替换" 替换了所选中的 p 元素的内部内容:

html
<div>
  <p>元素内容已替换</p>
</div>

规范

规范
HTML
# dom-outertext

浏览器兼容性

参见