指定dom元素的高度/宽度会使它们渲染得更快吗?

时间:2011-12-28 03:46:05

标签: javascript html dom extjs extjs4

在从ExtJS3“升级”到ExtJS4时,我们之前的代码的一个特定实例不再工作是使用renderTo将组件呈现到页面中的特定div,但是后来在回调完成时更新innerHTML 。我查看了生成的dom元素,并且在ExtJS3中没有指定高度,但在ExtJS4中,计算了初始高度并将其作为样式属性添加到div标记。

我的问题是,指定DOM元素的高度会使渲染更快吗? (毕竟ExtJS4应该是性能升级)它会因浏览器而异吗?是否有可用的基准数据?

顺便说一句,因为在ExtJS4中计算了初始高度,即使在调用update()(更新innerHTML)之后,组件也不会按照计算的高度不再需要进行渲染。解决方案是后续调用新的doComponentLayout方法(而不仅仅是doLayout)

2 个答案:

答案 0 :(得分:1)

理论上,如果指定宽度应该更快,因为框架不需要计算宽度。

实际上,您需要遵循要调整大小的特定组件的代码,并确定计算大小的确有多少工作量。

答案 1 :(得分:1)

正如Chao建议的那样,理论上更快。

但是你必须考虑在网页开发中,用户的屏幕尺寸可能不像你的那么大或小,这意味着它可能在不同的屏幕分辨率下看起来有点奇怪