HTML DOM Element textContent 属性

定义和用法

textContent 属性设置或返回指定节点的文本内容,以及它的所有后代。

如果您设置了 textContent 属性,会删除所有子节点,并被替换为包含给定字符串的一个单独的文本节点。

提示:有时,此属性可用于取代 nodeValue 属性,但是请记住此属性同时会返回所有子节点的文本。

另请参阅:

innerText 属性

innerHTML 属性

实例

例子 1

返回元素的文本内容:

let text = element.textContent;

亲自试一试

例子 2

更改 id="demo" 的 <p> 元素的文本内容:

element.textContent = "I have changed!";

亲自试一试

例子 3

获取 id="myList" 的 <ul> 元素的所有文本内容:

let text = document.getElementById("myList").textContent;

亲自试一试

语法

返回节点的文本内容:

element.textContent

node.textContent

设置节点的文本内容:

element.textContent = text
node.textContent = text

属性值

描述
text 元素或节点的文本内容。

返回值

类型 描述
字符串

元素及其所有后代的文本内容。

如果元素是 document、document type 或 notation,则返回 null。

innerHTML、innerText 与 textContent 的区别

innerText 属性返回:

只返回元素及其所有子元素的文本内容,没有 CSS 隐藏文本间距和标签,除了 <script> 和 <style> 元素。

innerHTML 属性返回:

元素的文本内容,包括所有空白和内部 HTML 标签。

textContent 属性返回:

元素和所有后代的文本内容,带有空白和 CSS 隐藏文本,但没有标签。

HTML 实例

<p id="myP">   This element has extra spacing     and contains <span>a span element</span>.</p>

JavaScript 实例

let text = document.getElementById("myP").innerText;

let text = document.getElementById("myP").innerHTML;

let text = document.getElementById("demo").textContent;

亲自试一试

在上面的例子中:

innerText 属性返回:

This element has extra spacing and contains a span element.

innerHTML 属性返回:

   This element has extra spacing    and contains <span>a span element</span>.

textContent 属性返回:

   This element has extra spacing    and contains a span element.

浏览器支持

element.textContent 是 DOM Level 3 (2004) 特性。

所有浏览器都完全支持它:

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
支持 9-11 支持 支持 支持 支持