📌  相关文章
📜  如何使用 JavaScript 获取没有 HTML 元素的文本?(1)

📅  最后修改于: 2023-12-03 15:23:53.492000             🧑  作者: Mango

如何使用 JavaScript 获取没有 HTML 元素的文本?

当我们需要从网页上获取特定文本时,常常会使用 JavaScript 来获取 HTML 元素的内容,例如:

<p id="my-text">Hello World!</p>
<script>
  var text = document.getElementById("my-text").innerHTML;
  console.log(text); // 输出:Hello World!
</script>

但是如果文本并没有被包含在 HTML 元素中,那该怎么办呢?

比如下面的例子:

<div>
  This text is not inside any HTML element!
</div>

如果我们试图使用 getElementById 或者其他获取 HTML 元素的方法,都会失败,因为并没有对应的元素。

那么怎么获取这个文本呢?其实也很简单,只需使用 JavaScript 提供的 document.body.innerText 属性即可:

<div>
  This text is not inside any HTML element!
</div>
<script>
  var text = document.body.innerText.trim();
  console.log(text); // 输出:This text is not inside any HTML element!
</script>

这里使用了 document.body.innerText 属性来获取整个文档的文本内容,再通过 trim() 方法去除空白字符,得到了我们需要的文本。

需要注意的是,这种方式获取到的文本内容可能包含一些不需要的部分,比如脚本、样式等,需要自行进行处理。

总的来说,使用 JavaScript 获取没有 HTML 元素的文本也不难,只需使用 document.body.innerText 属性即可轻松解决。