我正在使用我建立的网站上的同位素 - 它用于定位大量的JPEG,以及一个过滤系统 - 这效果很好,但页面的负载是缓慢的,因为我认为同位素有有些问题加载大量的图片...同位素加载图像progessively
我使用的代码如下:
$(window).load(function() {
// init Isotope
var $grid = $('.workGridWrapper').isotope({
// options
itemSelector: '.workGridItem',
percentPosition: true,
masonry: {
// use element for option
columnWidth: '.grid-sizer'
},
filter: '.InitialLoad'
});
// store filter for each group
var filters = {};
$('.filterGridInner').on('click', 'a', function() {
var $this = $(this);
// get group key
var $buttonGroup = $this.parents('.button-group');
var filterGroup = $buttonGroup.attr('data-filter-group');
// set filter for group
filters[ filterGroup ] = $this.attr('data-filter');
// combine filters
var filterValue = concatValues(filters);
// set filter for Isotope
$grid.isotope({ filter: filterValue });
});
// change is-checked class on buttons
$('.filterGridInner .button-group').each(function(i, buttonGroup) {
var $buttonGroup = $(buttonGroup);
$buttonGroup.on('click', 'li', function() {
$buttonGroup.find('.filterOn').removeClass('filterOn');
$(this).addClass('filterOn');
});
});
});
// flatten object by concatting values
function concatValues(obj) {
var value = '';
for (var prop in obj) {
value += obj[ prop ];
}
return value;
}
我敢肯定的window.load
功能是问题...
我见过笔记关于使用imagesLoaded
- 但不知道如何使用它而不会搞乱我目前的解决方案。
任何关于使页面加载更快的建议?该页面的总重量仅为2.1MB,其中1.7MB是图像 - 但是当我测试它时,似乎需要18秒才能加载。
任何想法?
看看这个codepen同时使用ImagesLoaded +同位素插件。 HTTP:// codepen。io/desandro/pen/bsHix –
谢谢 - 我真的想要适应我已经宁可使用另一种解决方案 – dubbs