【发布时间】:2010-03-21 07:38:02
【问题描述】:
我有一个带有图像的简单页面,当用户单击图像时,它会打开一个新的浏览器窗口,图像填充该区域。我在新窗口上设置了 css,这样图像的高度和宽度都是 100%(并且 overflow 设置为 hidden),以便可以调整窗口大小。
但是如果用户调整它的大小,我需要让窗口保持纵横比。现在,我被困住了,因为我不知道活动是如何运作的,但我认为我让这件事变得比需要的更难。现在我有:
$(function(){
$(window).resize(function() {
var height = $(this).attr("innerHeight");
var width = $(this).attr("innerWidth");
if(height/width != .75){
window.resizeTo(width,width*.75);
}
});
});
在我添加条件之前,窗口会立即开始缩小(显然打开一个新窗口会触发调整大小事件)。添加条件以防止在窗口打开时发生这种情况,但任何调整大小都会再次开始缩小。
仅仅是因为高度和宽度从来都不是正确的比例(我应该每次手动将宽度设置为整数)还是我做错了什么?还是有其他方法可以更直接地获得我想要的东西?
【问题讨论】:
标签: javascript jquery html browser