Javascript 获取ie8中enter浏览器窗口的高度
我正在尝试调整浏览器(我知道…我知道…)的宽度,只想保持用户当前的浏览器高度,我正在努力让它在IE8下正常工作 如果我这样做:Javascript 获取ie8中enter浏览器窗口的高度,javascript,internet-explorer-8,Javascript,Internet Explorer 8,我正在尝试调整浏览器(我知道…我知道…)的宽度,只想保持用户当前的浏览器高度,我正在努力让它在IE8下正常工作 如果我这样做: window.resizeTo(document.documentElement.clientWidth, document.documentElement.clientHeight); 从理论上讲,它应该保持完全相同的大小,我从高度上损失了大约176个像素。。。大概是滚动条的宽度 我找不到任何属性可以提供整个浏览器窗口的正确大小。这不是最好的解决方案,但它可以工作
window.resizeTo(document.documentElement.clientWidth, document.documentElement.clientHeight);
从理论上讲,它应该保持完全相同的大小,我从高度上损失了大约176个像素。。。大概是滚动条的宽度
我找不到任何属性可以提供整个浏览器窗口的正确大小。这不是最好的解决方案,但它可以工作 首先,保存当前报告的高度:
var oldY = document.documentElement.clientHeight;
其次,将窗口大小设置为已知大小:
window.resizeTo(800, 600);
var padX = 800 - document.documentElement.clientWidth;
var padY = 600 - document.documentElement.clientHeight;
接下来,通过从已知大小中减去报告的大小来确定填充量:
window.resizeTo(800, 600);
var padX = 800 - document.documentElement.clientWidth;
var padY = 600 - document.documentElement.clientHeight;
最后,将宽度设置为所需值加上padX
,将高度设置为oldY
加上padY
window.resizeTo(desiredWidth + padX, oldY + padY);
此方法的缺点是,用户可能会在过程的第二步注意到窗口大小的变化。我建议在使用此方法之前,先检测功能
window.outerWidth
,这样,双重调整大小仅限于不支持window.outerWidth/height的浏览器。