var grid = $('.gallery-grid')
function initMasonry()
{
if (grid.length)
if ($(window).width() >= 768) {
grid.imagesLoaded(function() {
setTimeout(function()
grid.masonry({
itemSelector: '.item',
percentPosition: true,
columnWidth: '.item'
});
initObserver(); // po zainicjowaniu masonry, odpal observer
}, 500);
}
else
if (grid.data('masonry'))
grid.masonry('destroy');
// Obserwacja pojawienia się elementów w viewport
function initObserver()
const observer = new IntersectionObserver((entries) =>
entries.forEach(entry =>
if (entry.isIntersecting)
$(entry.target).addClass('visible');
observer.unobserve(entry.target);
}, { threshold: 0.1 }); /* element w 10% widoczny = animacja startuje */
grid.find('.item').each(function()
observer.observe(this);
//Inicjalizacja
if( $(".realizacja-single-gallery").length)
$.cachedScript("/js/masonry_gzip.js", function ()
initMasonry(); // zaczytanie funkcji wykorzystującej dodatkową bibliotękę
//Dodatkowo małe zmiany w /data/gzip.php
if( $far[0] == '/js/all.js')
$far = getAllFiles("js/", "(.+).js", "(markerwithlabel|masonry).js");