确定元素的实际宽度/高度何时更改
问题描述:
我正在处理在iframe中打开的某些模块(相同的域,因此没有xss问题)。我根据你所做的事情隐藏或显示选项中的一种,这些选项可以增长或缩小表单。无论如何,长话短说,我有一些代码可以根据inital负载上的身体当前高度/宽度来调整iframe的大小。问题在于,我不确定在初始加载之后要判断身体的实际大小是否发生了变化。确定元素的实际宽度/高度何时更改
答
为什么不添加setInterval()?例如:
var originalWidth = {set original width}
var originalHeight = {set original height};
setInterval(function(){
var currentWidth = {grab new values};
var currentHeight = {grab new values};
if(originalWidth !== currentWidth){
//Change the width now...
//Next, set originalWidth to be the same as current for future checks
originalWidth = currentWidth;
}
//Now, do the same for original and current height
},100)
+0
为什么不能?因为它很丑!可能最终成为唯一的解决方案,虽然 – 2011-01-31 21:14:37
没有事件可做。可能必须轮询和测量body元素,对于较新的浏览器,您可以检查DOMSubtreeModified事件并查看尺寸是否已更改 – 2011-01-31 21:06:03