在JavaScript中获取无样式元素的高度/宽度的最快方法是什么?

时间:2017-08-30 12:15:52

标签: javascript performance

我遇到了测量非流动的无格式元素的高度/宽度的性能问题。阅读以下属性似乎非常缓慢:

.offsetHeight
.clientHeight
.scrollHeight

我在其他地方读到它很慢,因为以某种方式阅读它们会导致重排。至少,这是我发现的offsetHeight,但其他两个表现相同。这里有某种量子魔法,因为逻辑上读取属性不应该导致页面重排。无论如何,是否有更快的方法在最简单的条件下找到元素的宽度/高度,其中元素没有应用margin, padding, border的任何样式,或者没有任何其他样式?

.style.height只返回空字符串,因为它只读取style=""属性中的值,该属性在显式定义之前为空。

更新:window.getComputedStyle(el).height执行速度一样慢。

0 个答案:

没有答案