对不起,我是一个 JavaScript 菜鸟,但谁能解释一下为什么不建议使用.innerHTML. 当我们有了以 形式更快更容易的东西时,我们.innerHTML为什么不应该使用它呢?
为什么建议避免使用 .innerHTML?
IT技术
javascript
2021-03-11 08:08:34
1个回答
innerHTML是一把大锤。它会炸掉所选 DOM 元素的内容,并用当时分配的任何内容替换它们。这会导致许多 HTML 转义和验证问题。
更重要的是,对于绑定了大量事件的页面,使用innerHTMLappend 另一个元素会重新生成 DOM 元素,这意味着事件绑定可能会丢失。
当元素从 DOM 中删除时,旧版本的 IE 中也存在一些关于内存泄漏的问题。
综上所述,我并不是要告诉您不应该使用innerHTML. 当我使用$(selector).html(). 有时,大锤是完成这项工作的正确工具,当事件被正确委派时,重新加载多少内容并不重要。
其它你可能感兴趣的问题