0
我需要幫助:我使用帶有無限滾動的同位素來顯示畫廊的縮略圖。所有項目都顯示時,一切正常(不含同位素過濾器)。通過利弊,當人們使用同位素過濾器(也就是說在我的頁面打開時),查看縮略圖的動畫會運行所有新元素,即使是那些應該被過濾的元素!無限滾動+同位素
簡而言之:我們看到每個新項目的動畫位加載後,它會展開然後縮小,變得不透明並隱藏,創建閃爍...... 如何從開始時禁用和隱藏動畫,每個新元素應該是過濾?
感謝您的幫助! (對不起,我的英語)
/*Masonry*/
var $containermasonry = $('.masonry');
$containermasonry.imagesLoaded(function() {
\t $containermasonry.masonry({
\t \t itemSelector: '.item', \t \t
\t \t \t });
\t \t \t
\t $containermasonry.isotope({
\t \t \t transitionDuration: '0.8s',
\t \t \t animationEngine: 'best-available',
\t \t \t itemSelector : '.item',
\t \t \t layoutMode : 'masonry',
\t \t \t filter : '.new',
\t \t \t
\t \t \t \t getSortData: {
\t \t \t \t \t date: '[data-date]',
\t \t \t \t \t categories:'[data-categ]',
\t \t \t \t } \t \t
\t \t \t });
});
/*infinitescroll*/
$containermasonry.infinitescroll({
navSelector : '#page-nav',
nextSelector : '#page-nav a',
\t itemSelector : '.item',
\t \t loading: {
\t \t \t finishedMsg: '',
\t \t \t img: '_include/img/supersized/progress.gif'
\t \t }
},
\t function(newElements) {
var $newElems = $(newElements).css({'display': 'none', 'visibility': 'hide', opacity: 0});
\t \t
\t $newElems.imagesLoaded(function(){
\t \t \t \t /*$newElems.animate({ opacity: 1 });*/ \t
\t \t \t \t $containermasonry.infinitescroll('retrieve'); \t \t \t \t \t \t \t \t
\t \t \t \t $containermasonry.masonry('appended', $newElems, true);
\t \t \t \t $containermasonry.isotope('appended', $newElems, true);
\t \t });
} \t
);
\t \t \t
\t \t // filter items
\t \t var $optionSets = $('#options .option-set'),
\t \t \t $optionLinks = $optionSets.find('a');
\t
\t \t $optionLinks.click(function(){
\t \t \t var $this = $(this);
\t \t \t if ($this.hasClass('selected')) {
\t \t \t return false;
\t \t \t }
\t \t \t var $optionSet = $this.parents('.option-set');
\t \t \t $optionSet.find('.selected').removeClass('selected');
\t \t \t $this.addClass('selected');
\t
\t \t \t var filterValue = $(this).attr('data-option-value');
\t \t \t $containermasonry.isotope({ filter: filterValue }); \t \t \t \t \t \t \t \t \t \t \t
\t \t \t });