有没有人有充分的理由使用一个而不是另一个?据我所知,创建/append 节点只是防止您创建无效代码,而 innerHTML 允许您一次注入(inject)多个节点。
考虑到我需要插入几个标签,使用 innerHTML 似乎是有意义的。有人有不同的看法吗?
最佳答案
这一直是一个有争议的争论,部分原因是 innerHTML
的起源从标准的 Angular 来看有些可疑。我认为 QuirksMode 文章仍然相关,但我希望看到它更新。也许contact ppk关于更新它们,尽管我确定他很忙。我们都可以从我们在 Web 开发中所做的假设的性能测试中受益。说到底还是要有硬数据来证明,否则就是空话。
无论如何,我进行了一些搜索,发现了一些与此讨论相关的有趣文章。我不记得以前听说过 DocumentFragments,它们真的很有趣。
- DOM DocumentFragments
- jQuery Performance Rules
- Improve your jQuery - 25 excellent tips
- Speed test: innerHTML versus DOM manipulation ...一个真正测试速度的测试,对于任何想要收集浏览器当前数据的人来说都是值得的
关于javascript - 创建/append 节点与 innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1694233/