什么样的活动会触发DOM重排?
似乎有不同的观点。根据http://www.nczonline.net/blog/2009/02/03/speed-up-your-javascript-part-4/,会在以下情况下发生:
- 添加或删除DOM节点时。
- 动态应用样式(例如element.style.width="10px")。
- 检索必须计算的测量值,例如访问offsetWidth、clientHeight或任何计算的CSS值(通过DOM兼容的浏览器中的getComputedStyle()或IE中的currentStyle)。
然而,根据http://dev.opera.com/articles/view/efficient-javascript/?page=3,仅当已经排队了回流操作时,才会在获取测量值时触发重排。
还有其他想法吗?