如何获得元素的innerText

阅读时长 3 分钟读完

在前端开发中,经常需要获取网页元素的文本内容。其中一种方法是使用 innerText 属性。这个属性可以返回一个元素及其所有后代元素的文本内容,并去除 HTML 标签和注释。

使用innerText属性

要使用 innerText 属性,需要先获取目标元素。可以使用 document.getElementById()element.querySelector() 等方法来获取元素对象。然后,就可以通过以下方式获取元素的文本内容:

上述代码中,我们首先通过 document.getElementById() 方法获取 my-element 元素。接着,我们通过调用 innerText 属性,将该元素的文本内容存储到 textContent 变量中。最后,我们使用 console.log() 打印出 textContent

innerText与textContent的区别

虽然 innerTexttextContent 都可以获取元素的文本内容,但它们之间还是有一些区别的。

  • innerText 会自动移除空格、换行符等不可见字符,而 textContent 不会。
  • innerText 在某些情况下可能受 CSS 样式影响,而 textContent 则不会。例如,如果一个元素设置了 display: none; 样式,则该元素的 innerText 属性值为 ""(空字符串),而 textContent 则仍然可以获取到该元素的文本内容。
  • innerText 是只读属性,而 textContent 可以被修改。这意味着,如果要更新一个元素的文本内容,应该使用 textContent

注意事项

  • 如果想获取包含 HTML 标签和注释的所有内容,应该使用 innerHTML 属性。
  • 在获取 innerText 值之前,请确保元素已经加载完毕。否则,可能会返回不准确的值。
  • 如果目标元素是表单元素(如 inputtextarea 等),应该使用 value 属性来获取其值,而不是使用 innerTexttextContent

示例代码

-- -------------------- ---- -------
--------- -----
------
  ------
    ----- ----------------
    -------------------
  -------
  ------
    ---- --------------------------------------------
    --------
      ----- ------- - --------------------------------------
      ----- ----------- - ------------------
      ------------------------- -- ------------
    ---------
  -------
-------

在上述示例中,我们创建了一个 div 元素,并设置其 idmy-element。接着,在 JavaScript 中获取该元素,并使用 innerText 属性获取其文本内容。最后,将文本内容输出到控制台。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/14426

纠错
反馈