Javascript 图像大小Jquery

Javascript 图像大小Jquery,javascript,jquery,html,css,ajax,Javascript,Jquery,Html,Css,Ajax,这是网站: 可在此下载: 我已经成功地将画廊的每行图像自动匹配,这取决于它是水平的(每行一个图像)还是垂直的(每行两个图像) 现在的问题是,我希望图像是可伸缩的(在窗口调整大小时调整大小),但我不知道如何实现它。我该怎么做 这是我的代码: var gallery = new Gallery($('#gallery_images_inner')); function Gallery(selector){ this.add_module = function(type, image){

这是网站:

可在此下载:

我已经成功地将画廊的每行图像自动匹配,这取决于它是水平的(每行一个图像)还是垂直的(每行两个图像)

现在的问题是,我希望图像是可伸缩的(在窗口调整大小时调整大小),但我不知道如何实现它。我该怎么做

这是我的代码:

var gallery = new Gallery($('#gallery_images_inner'));

function Gallery(selector){

this.add_module = function(type, image){
    var container = $('<div />' , {
        'class' : 'gallery_container'
    }).append(image);
    if(type == 'horizontal'){
        var h_ar = image.attr('height') / image.attr('width');
        container.css({
            'width' : selector.width(),
            'height' : selector.width()*h_ar
        })
    }
    if(type == 'vertical'){
        container.css({
            'width' : v_width,
            'height' : v_height
        })
    }
    container.appendTo(selector);
    container.children('img').fitToBox();
}
var _this = this;
var gutter = 0;
// start vars for counting on vertical images
var v_counter = 0;
var w_pxls = 0;
var h_pxls = 0;
// iterates through images looking for verticals
selector.children('img').each(function(){
    if($(this).attr('width') < $(this).attr('height')){
        v_counter++;
        h_pxls += $(this).attr('height');
        w_pxls += $(this).attr('width');
    }
})
// calculates average ar for vertical images (anything outside from aspect ratio will be croped)
var h_avrg = Math.floor(h_pxls/v_counter);
var w_avrg = Math.floor(w_pxls/v_counter);
var v_ar = h_avrg/w_avrg;
var v_width = (selector.width())/2;
var v_height = v_width*v_ar;
selector.children('img').each(function(){
    if(parseInt($(this).attr('width')) > parseInt($(this).attr('height'))){
        _this.add_module('horizontal', $(this));
    }else{
        _this.add_module('vertical', $(this));
    }
})
selector.isotope({
    masonry: {
        columnWidth: selector.width() / 2
    }
});

}
var gallery=newgallery($(“#gallery_images_inner”);
功能库(选择器){
this.add_module=函数(类型、图像){
变量容器=$(''{
“类”:“库容器”
}).附加(图像);
如果(类型=‘水平’){
var h_ar=image.attr('height')/image.attr('width');
container.css({
“宽度”:选择器。宽度(),
“高度”:选择器.width()*h_ar
})
}
如果(类型==“垂直”){
container.css({
“宽度”:v_宽度,
“高度”:v_高度
})
}
container.appendTo(选择器);
container.children('img').fitToBox();
}
var_this=这个;
var=0;
//启动变量以在垂直图像上计数
var v_计数器=0;
var w_pxls=0;
var h_pxls=0;
//在图像中迭代查找垂直方向
selector.children('img').each(function(){
if($(this.attr('width')<$(this.attr('height')){
v_计数器++;
h_pxls+=$(this.attr('height');
w_pxls+=$(this.attr('width');
}
})
//计算垂直图像的平均ar(宽高比以外的任何内容都将被忽略)
var h_avrg=数学地板(h_pxls/v_计数器);
var w_avrg=数学地板(w_pxls/v_计数器);
var v_ar=h_avrg/w_avrg;
var v_width=(selector.width())/2;
var v_高度=v_宽度*v_ar;
selector.children('img').each(function(){
if(parseInt($(this.attr('width'))>parseInt($(this.attr('height'))){
_this.add_模块('horizontal',$(this));
}否则{
_this.add_模块('vertical',$(this));
}
})
同位素选择器({
砌体:{
columnWidth:selector.width()/2
}
});
}

@media='sceen'或您正在使用的任何东西,然后

img {max-width: 100%, height: auto;}

您可以在javasript中通过附加到此处介绍的窗口大小调整事件来实现这一点

谢谢,但我试图避免高度:自动,它不适用于IE,我正在寻找javascript解决方案IMG{max width:100%}才是您真正需要的。它在IE 9+中起作用。你在5小时内发布了4次相同的问题。。这不是使用此网站的方式。