带有 Magnific Popup 回调的无限滚动
infinite Scroll with Magnific Popup callback
我正在使用 Infinite scroll 和 Magnific Popup。
弹出窗口适用于 'page 1' 的内容,但之后失败。我试图在 infiniteScroll 调用中使用 MagnificPopup 的回调。
$grid.infiniteScroll({
path: '.pagination__next',
append: '.grid__item',
outlayer: msnry,
status: '.page-load-status',
}, function( newElements ) {
$('.open-pop').magnificPopup({
type: 'inline',
mainClass: 'mfp-fade',
fixedContentPos: false,
gallery: {
enabled: true,
navigateByImgClick: false,
}
});
});
我的问题与此类似Magnific popup and infinite scrolling,我尝试实施但未成功。
我正在使用 Masonry 可能会更加复杂。这是我的完整代码:
// init Masonry
var $grid = $('.grid').masonry({
itemSelector: 'none', // select none at first
columnWidth: '.grid__col-sizer',
gutter: 26,
percentPosition: true,
stagger: 30,
// nicer reveal transition
visibleStyle: { transform: 'translateY(0)', opacity: 1 },
hiddenStyle: { transform: 'translateY(100px)', opacity: 0 },
});
// get Masonry instance
var msnry = $grid.data('masonry');
// initial items reveal
$grid.imagesLoaded( function() {
$grid.removeClass('are-images-unloaded');
$grid.masonry( 'option', { itemSelector: '.grid__item' });
var $items = $grid.find('.grid__item');
$grid.masonry( 'appended', $items );
});
$grid.infiniteScroll({
path: '.pagination__next',
append: '.grid__item',
outlayer: msnry,
status: '.page-load-status',
}, function( newElements ) {
$('.open-pop').magnificPopup({
type: 'inline',
mainClass: 'mfp-fade',
fixedContentPos: false,
gallery: {
enabled: true,
navigateByImgClick: false,
}
});
});
使用onInit
事件作为回调函数。
onInit: function() { this.on( 'append', function() {...}) }
我正在使用 Infinite scroll 和 Magnific Popup。
弹出窗口适用于 'page 1' 的内容,但之后失败。我试图在 infiniteScroll 调用中使用 MagnificPopup 的回调。
$grid.infiniteScroll({
path: '.pagination__next',
append: '.grid__item',
outlayer: msnry,
status: '.page-load-status',
}, function( newElements ) {
$('.open-pop').magnificPopup({
type: 'inline',
mainClass: 'mfp-fade',
fixedContentPos: false,
gallery: {
enabled: true,
navigateByImgClick: false,
}
});
});
我的问题与此类似Magnific popup and infinite scrolling,我尝试实施但未成功。
我正在使用 Masonry 可能会更加复杂。这是我的完整代码:
// init Masonry
var $grid = $('.grid').masonry({
itemSelector: 'none', // select none at first
columnWidth: '.grid__col-sizer',
gutter: 26,
percentPosition: true,
stagger: 30,
// nicer reveal transition
visibleStyle: { transform: 'translateY(0)', opacity: 1 },
hiddenStyle: { transform: 'translateY(100px)', opacity: 0 },
});
// get Masonry instance
var msnry = $grid.data('masonry');
// initial items reveal
$grid.imagesLoaded( function() {
$grid.removeClass('are-images-unloaded');
$grid.masonry( 'option', { itemSelector: '.grid__item' });
var $items = $grid.find('.grid__item');
$grid.masonry( 'appended', $items );
});
$grid.infiniteScroll({
path: '.pagination__next',
append: '.grid__item',
outlayer: msnry,
status: '.page-load-status',
}, function( newElements ) {
$('.open-pop').magnificPopup({
type: 'inline',
mainClass: 'mfp-fade',
fixedContentPos: false,
gallery: {
enabled: true,
navigateByImgClick: false,
}
});
});
使用onInit
事件作为回调函数。
onInit: function() { this.on( 'append', function() {...}) }