我知道这里有很多答案,但没有一个能为我工作。
我正在尝试加载固定宽度的图像,但图像的高度不同。
我正在使用带有imagesLoaded js的Jquery Masonry,但我还是无法让它工作。如果我将css中的宽度和高度设置为像素大小,它可以正常工作,但如果我将高度更改为auto,则会失败并且所有图像都会加载相同的高度。
这是我用来初始化的javascript(我尝试过很多变种!)
var container = document.querySelector('#container');
var msnry;
// initialize Masonry after all images have loaded
imagesLoaded( container, function() {
msnry = new Masonry( container, {
// options
columnWidth: 390,
itemSelector: '.item'
} );
});
这就是css
img {display:block; height:auto; width:390px;}
我已经乱哄哄几天了,有人必须知道答案!
答案 0 :(得分:0)
希望这将有助于将来的一些人。
我唯一可以忍受的是等待页面完全加载以达到设定的高度,然后再抓住这些高度。
为此,我使用了window.load。也许有更好的方法,但这对我有用。
$(window).load(function(){
$('.someDiv').each(function () {
var $this = $(this);
var someDivHeight = $this.height();
console.log(someDivHeight);
});
});