代码之家  ›  专栏  ›  技术社区  ›  o.k.w

获取开启器窗口的窗口大小(IE)

  •  0
  • o.k.w  · 技术社区  · 15 年前

    我在谷歌上搜索了很多,也搜索了这个网站,仍然找不到一个明确的简洁的答案。

    加上: 我真的需要外部尺寸,这样我就可以对打开的窗口进行重新调整(w,h),其中w和h是根据打开器的大小的比率计算的。具有讽刺意味的是,“resizeTo”设置IE和其他浏览器的外部大小。我还用resizeBy尝试了一堆乱七八糟的东西,还不够好。

    1 回复  |  直到 15 年前
        1
  •  3
  •   Crescent Fresh nosklo    15 年前

    outerWidth outerHeight window.innerWidth / window.innerHeight .

    jQuery可以提供当前窗口视口的尺寸,但不能提供其他窗口(例如,打开器、子窗口等)。所以你必须自己编写代码。这是一个原始样本:

    // get viewport size (without scrolling) of the given window object
    function clientSize(win) {
        var width, height;
    
        if(win.innerWidth || win.innerHeight) {
            width = win.innerWidth;
            height = win.innerHeight;
        } else {
            var doc = win.document;
            width = doc.documentElement.clientWidth || doc.body.clientWidth;
            height = doc.documentElement.clientHeight || doc.body.clientHeight;
        }
    
        return { width:width, height:height }
    }
    

    var openerSize = clientSize(window.opener); 
    // now use openerSize.width, openerSize.height
    

    还请注意,如果给定窗口已从另一个域加载文档,则无法读取任何这些值(安全措施)。