我正在尝试在IE中调整窗口大小。为此,我正在使用
window.resizeBy(width - document.documentElement.clientWidth, height - document.documentElement.clientHeight);
但是,有时这会因“访问被拒绝”异常而失败。我处理这个的方式就是使用
setTimeout('resizeWindow(' + width + ', ' + height + ')', 200);
如果发生异常,请稍后重试。
麻烦的是,如果需要快速连续几次重新调整窗口大小,它现在会导致竞争状态。
有谁知道为什么可能会抛出“拒绝访问”异常以及如何避免它?
答案 0 :(得分:1)
调整大小是为了响应用户点击按钮而发生的。在按钮上的mousedown上,会触发一个事件,从而调整窗口的大小。如果用户在调整大小期间按住按钮IE会抛出异常,因为它不允许窗口在按钮关闭时调整大小(可能是出于可用性原因)。快速切换按钮增加了鼠标按钮在尝试调整窗口大小时失效的可能性。