案例:内容被动态添加到某个div(使用jquery)。内容包含大量元素(比如 1000 个 div)。
然后我需要计算元素的正确尺寸(实际上我需要以 px 为单位的顶部位置,所以我使用 jquery position() 函数)。首先,我在添加内容后立即开始计算。
问题是有时顶部位置计算不正确我相信(并且非常肯定)这是因为尚未正确应用于该内容的 css 样式。
我试图解决这个问题,在添加内容后一些超时(使用 setTimeout)后开始调用。我使用的超时时间越长(我测试了 20 到 500 毫秒),浏览器应用样式的时间就越多,计算错误的可能性就越小。
问题是这个超时解决方案不是 100% 可靠和安全的,我需要使用相当大的超时来确保进程的正确性,这可能会降低进程的整体性能。
所以我需要知道什么时候样式被完全应用,什么时候我可以开始位置计算。你有什么建议,有什么可靠的方法可以做到这一点?