ScrollReveal.js - 显示Click或Event上的所有项目?

Rad*_*ion 9 javascript jquery jquery-isotope jquery-events scrollreveal.js

有没有办法通过点击事件显示滚动显示的所有项目? 或许揭示所有功能?

问题:

我正在使用滚动显示以及同位素.同位素的分选功能与滚动揭示反应奇怪.

当我点击"过滤器"按钮时,我正在调用同位素功能过滤器.

 $grid.isotope({filter: '.fish-filter'}); // example
Run Code Online (Sandbox Code Playgroud)

但是,如果我在点击所述文件管理器按钮后向下滚动,我的网格中就会出现漏洞,我必须在通过滚动显示所有项目后"重新点击"按钮

谢谢!!

更新

我在这里添加了布局调用 - 这至少修复了之前存在的漏洞:

window.sr = ScrollReveal({
    beforeReveal: function (domEl) {
        //$grid.isotope( 'layout'); // fixes holes
    },
    afterReveal: function (domEl) {
        $grid.isotope('layout');
    }
});
Run Code Online (Sandbox Code Playgroud)

然而 - 新过滤的物品没有"淡入",因为它们与滚动显示它们"平铺",与同位素的样式一样.理想的情况是显示所有布局场景 - 这种方式你不能注意到动画中的任何差异 - 或者另一种情况可能只是简单的恒定渐变而不管点击过滤器.

更新更新

我们决定让所有瓷砖都具有相同的高度,以便不再遇到问题.

谢谢

Mik*_*ike 3

同位素有一个称为重新布局的功能。你可以像这样使用它$grid.isotope( 'reLayout', callback )

您可以在这里阅读文档

考虑到您遇到的问题,此功能可能更有用。

但是,要具体回答您的问题:同位素只是添加一个类来隐藏项目,因此您可以使用这样的函数“重置”

$('button').on('click', function() { 
    //You can reset the CSS 
    $('.isotope-hidden').removeClass('isotope-hidden');
    //Or you can use the isotope filter reset. 
    $grid.isotope({ filter: '*' });
});
Run Code Online (Sandbox Code Playgroud)