feng xiaohan

textContent 和别的区别

textContent 和别的区别

两者都是用于获取元中的内容的。

innerText

  • textContent 是 Node 对象提供的;而 innerText 是 HTMLElement 对象提供的。
  • textContent 会获取该元素里所有的内容,包括受 css 样式影响(隐藏)的元素内容和 script 标签里的内容;innerText 则不会。
    因此使用 textContent 可以防止 XSS 攻击。

    在 IE 小于等于 11 的版本,对 innerText 的行为有修改。

  • 由于 innerText 受 CSS 样式的影响,它会触发回流去确保是最新的计算样式。

innerHTML

  • innerHTML 是 Element 对象的属性;
  • innerHTML 返回完整的 DOM 元素;