我有一个包含许多字段的窗口,其中一些字段显示/隐藏视图中的其他字段或元素。发生这种情况时,我会调用一个函数来调整窗口大小。
该函数基本上获取主体宽度和高度,并使用 window.resizeTo 函数相应地调整窗口大小。
现在我被要求添加一个新功能:如果用户手动调整窗口大小,请停止进一步自动调整大小。
我想我可以收听 resize 事件,并可能检测到它何时被 window.resizeTo 函数触发以及何时被用户触发。
问题是,我还没有找到办法……有可能吗?
我有一个包含许多字段的窗口,其中一些字段显示/隐藏视图中的其他字段或元素。发生这种情况时,我会调用一个函数来调整窗口大小。
该函数基本上获取主体宽度和高度,并使用 window.resizeTo 函数相应地调整窗口大小。
现在我被要求添加一个新功能:如果用户手动调整窗口大小,请停止进一步自动调整大小。
我想我可以收听 resize 事件,并可能检测到它何时被 window.resizeTo 函数触发以及何时被用户触发。
问题是,我还没有找到办法……有可能吗?
有.resize()
。但是,如果用户调整了窗口大小,我看不到从浏览器获取本机信息的变化。但我可以想到一个解决方案,当你的函数调整窗口大小时设置一个标志*,然后在 .resize() 内什么也不做。但是如果 .resize() 被触发但你的标志没有设置,它是由用户触发的。
* = 在调整大小代码运行后也删除标志。
没错,使用“resize”事件可以检测用户何时调整浏览器的大小。例子:
document.addEventListener("resize", function(){
alert("resizing!");
}, false);