JS / DOM优化:使用:在内容样式之后而不是改变innerHTML

时间:2015-04-09 11:53:59

标签: javascript html css dom optimization

基本上,鉴于元素的所有可能内容都是事先已知的,您可以使用一堆:在内容样式之后而不是更改元素的innerHTML。只需更改课程即可获得新内容。

我在Chrome中的分析表明这确实提高了性能,但我不完全确定,因为成本可能会隐藏在其他地方?而且我不确定除Chrome之外的其他浏览器是否不好。有什么想法吗?

请注意,此处的上下文是每秒60帧的模拟/可视化,因此在此上下文中,2对4毫秒是一个很大且显着的差异,它可能不在页面加载的上下文中。

编号的示例样式可以在这里看到:https://github.com/magwo/elevatorsaga/blob/2fa5dc0c0397d0565ce5dcc45c68b19d924a4955/style.css#L290

1 个答案:

答案 0 :(得分:0)

pseudo-elements design elements他们不是内容,他们没有出现在源代码中,它们不存在于DOM中,它们不会被搜索引擎抓取,您无法选择或复制它们,当然,如果没有CSS,它们就不存在,这是style-sheet

它可能更快,但这可能是因为它不是内容。也许浏览器更改类比更改元素的内容更容易。

问题是,您想要更改内容或视觉表现吗?

至于实现,我认为将所有可能的内容加载到CSS不是优化,如果您计划为每个新内容更改请求新的CSS文件,则同样适用。< / p>

最后,至少就目前而言,您无法设置pseudo-element内容的各个部分的样式,您无法添加段落,跨度和其他标记。