imagesBarBar js的imagesLoaded和页面过渡

时间:2019-06-27 14:28:28

标签: javascript promise transition imagesloaded barbajs

我需要将imagesLoaded.js与barba.js集成在一起,但我无法实现。 我正在尝试将所有图像(也包括背景)加载到“ beforeEnter”视图挂钩中,并以承诺等待它们,然后继续进行“输入”过渡挂钩。

由于某种原因,“ enter”转换钩在“ beforeEnter”视图钩之前触发。

我在做什么错?过渡和视图是否未链接? 预先感谢。

我的代码:

barba.init({
transitions: [{
        leave: function (data) {
            return new Promise(resolve => {
                anime({
                    before: function () {
                        body.classList.add('transitioning');
                    },
                    complete: function () {
                        resolve();
                    },
                    duration: 500,
                    easing: 'easeInOutQuad',
                    targets: loader,
                    translateX: ['-100%', '0%']
                });
            });
        },

        enter: function (data) {
            anime({
                complete: function () {
                    body.classList.remove('transitioning');
                },
                duration: 500,
                easing: 'easeInOutQuad',
                targets: loader,
                translateX: ['0%', '100%']
            });
        }
    }],

views: [{
        namespace: 'home',

        afterLeave: function (data) {
            ...
        },

        beforeEnter: function (data) {
            ...

            return new Promise(resolve => {
                imagesLoaded(data.next.container.querySelector('.main'), {background: true}, function () {
                    resolve();
                });
            });
        }
    }]

});

0 个答案:

没有答案