代码之家  ›  专栏  ›  技术社区  ›  ChadT

获取ie8中enter浏览器窗口的高度

  •  1
  • ChadT  · 技术社区  · 16 年前

    如果我这样做:

    window.resizeTo(document.documentElement.clientWidth, document.documentElement.clientHeight);
    

    从理论上讲,它应该保持完全相同的大小,我从高度上损失了大约176个像素。。。大概是滚动条的宽度。

    我找不到任何可以提供整个浏览器窗口正确大小的属性。

    1 回复  |  直到 16 年前
        1
  •  3
  •   Ben    16 年前

    这不是最好的解决方案,但它确实有效。

    首先,保存当前报告的高度:

    var oldY = 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);
    

    这种方法的缺点是,用户可能会在过程的第二步注意到窗口大小的变化。