用于限制大小调整浏览器窗口大小的css或javascript选项

时间:2014-03-15 01:06:22

标签: javascript html css

这是我想要的要求。

如果我点击输入按钮。启动一个新的弹出窗口。

#room_iframe{
    border: 0; 
    position:absolute; 
    top:0; 
    left:0; 
    right:0; 
    bottom:0; 
    width:100%; 
    height:100%;
    min-width: 1024px;
    min-height: 800px;
}

如您所见,如果用户调整浏览器窗口大小,请在1024 * 800

它会滚动。

但我的客户希望将其更改为停止调整窗口大小,如果它最小为1024 * 800。

或者是否有一个选项,用户永远不会调整浏览器窗口大小?

2 个答案:

答案 0 :(得分:4)

那么,你想成为那个网站吗?您需要一个保持固定宽度/高度...或至少最小宽度/高度的窗口。如果您的目标浏览器是IE,您可以设置“resizable = 0”。

但是,我们是21世纪的宝贝。我们有像Chrome和FireFox这样讨厌的浏览器阻止我们自动打开窗口或阻止调整大小。

BOO。

我们不会让他们在我们的游行中下雨!那么,我们该怎么办?

以下是:

window.open('', 'that site!', 'width=300, height=300, resizable=no')

这涵盖了我们的IE。但是,那些......现代浏览器呢?

有几种方法:收听onresize事件。如果窗口尺寸小于您想要的尺寸,请调整新窗口的大小。这是一个小提琴,表明: http://jsfiddle.net/eqj3k/

另一种方法是通过setTimeout轮询窗口 - 这是一个小提琴:http://jsfiddle.net/5PAHP/

这两个都没有锁定网站(它只是阻止浏览器低于500x500)。

玩得开心!
在这里插入邪恶的笑声

答案 1 :(得分:2)

Hava看看这个问题: Disable Browser Window Resize

用来解释:

如果你有jQuery,你可以这样做:

$(window).resize(function(){
  window.resizeTo(1024,800);
});

然而,这并不总是有效(例如在Safari中它只有在没有其他标签的情况下才有效,在Firefox中只有在它是由window.open或类似的窗口启动时才有效),当它工作时,它会非常讨厌。如果您只想设置最小尺寸,请添加if测试测试宽度和/或高度。

没有jQuery,并测试大小(糟糕的是,它调整窗口大小并检查文档大小......):

window.onresize = function() {
    if (window.innerWidth < 900 || window.innerHeight < 600) {
        window.resizeTo(1024,800);
    }
};