jquery源码笔记

Last Updated:

2017-12-22

阅读艾伦的博客jQuery源码分析系列; 此文是阅读过程中的笔记

DOM操作核心 – buildFragment

textContent

Element.textContent

详细请看mdn相关文档

与innerText区别

innerText是IE引入的,跟textContent目的是相似的

textContent 会获取所有元素的内容,包括<script> 和 <style> 元素,然而 IE 专有属性 innerText 不会。
innerText 会受样式的影响,它不返回隐藏元素的文本,但 textContent 返回。
由于 innerText 受 CSS 样式的影响,它会触发重排(reflow),但textContent 不会。
与 textContent 不同的是, 在 Internet Explorer (对于小于等于 IE11 的版本) 中对 innerText 进行修改, 不仅会移除当前元素的子节点,而且还会永久性地销毁所有内部文本节点(由此导致无法再将这些被销毁的文本节点插入到当前元素或任何其他元素中)。

与innerHTML区别

基本一致。只是有时候只是需要添加文本信息的时候,虽然使用innerHTML也能达到效果,不过innerHTML=xx,xx是会被解析成html了。所以xx要是有恶意代码就完蛋