【发布时间】:2016-06-09 01:08:02
【问题描述】:
我想从公司帐户加载一些 flickr 照片,但图片对齐有一些问题。
我正在使用 Isotope 以适当的方式对齐图片。现在我面临的问题是,当我的网站第一次加载时,图片会重叠。当我调整窗口大小时,图片对齐正常,一切都很好,但这并不能解决我的基本问题。 为了解决网站上第一次调用的重叠问题,我尝试使用推荐的 imagesloaded.js,但它不起作用。
首先我以为是因为我通过异步ajax调用加载了图片,所以我将我的AJAX函数更改为以下函数,但我仍然面临同样的问题。
$.getJSON("https://api.flickr.com/services/feeds/photos_public.gne?id=125591374@N02&format=json&jsoncallback=?", function (data) {
console.log(data);
$("img").each(function () {
$(this).attr("src", data.items[i].media.m);
i++;
});
});
这是我的同位素脚本
var $container = $('#picContainer');
$container.isotope({
itemSelector: '.picContainer-item'
, percentPosition: true
, layoutMode: 'masonry'
, masonry: {
columnWidth: 50
}
});
$container.imagesLoaded().progress(function () {
$container.isotope("layout");
});
我找不到问题。有谁知道我哪里做错了?
我还准备了一个 codepen 以便更好地理解 :)
谢谢!
【问题讨论】:
-
问题解决了,只要把 imagesLoaded() 函数往上放一点
-
未解决。这会禁用同位素库本身。尝试调整页面大小。
标签: jquery html alignment jquery-isotope