【发布时间】:2016-12-23 06:41:15
【问题描述】:
在 javascript 中我定义了这个窗口大小调整事件
$(window).resize(function() {
})
但是在里面,我需要获取元素的宽度。问题是,我得到的尺寸是针对它在回流之前的状态,当我需要在回流之后获得尺寸时。
我尝试设置 1 毫秒的超时时间,但它似乎不起作用。如果我做 100 毫秒,那么它会做。但是我没有链接这个方法,有没有更好的方法?
EDIT:该函数被调用一次,但它只是需要等到重绘之后。
谢谢
【问题讨论】:
-
这并不是说我在调整大小时会触发多个事件(即它只被调用一次),但我只需要等到浏览器重绘之后。
-
resize 事件在文档调整大小后触发,但显然在所有重绘完成之前触发。也许可以使用 RequestAnimationFrame 来确定浏览器是否(几乎)完成。见developer.mozilla.org/en-US/docs/Web/Events/resize 和developer.mozilla.org/en-US/docs/Web/API/window/…
标签: javascript jquery html dom