【问题标题】:Error with mixitup filtering on pages that don't have filtering没有过滤的页面上的混合过滤错误
【发布时间】:2017-07-17 13:08:32
【问题描述】:

在我的主页上,我使用了 mixitup:

var containerEl = document.querySelector('.gallery-container');
    var mixer = mixitup(containerEl, {
        selectors: {
            control: '[data-mixitup-control]'
        },
        load: {
            filter: '.engagement-ceremony'
        }
    });

我是从他们的网站上得到的。它工作正常,但是当我转到另一个页面时,我在控制台中收到此错误: Uncaught Error: [MixItUp] An invalid selector or element reference was passed to the mixitup factory function 这导致我在页面上的其他 js 中断。

我想我会试试这个,看看会发生什么:

var mixer = mixitup('.gallery-container', {
        selectors: {
            control: '[data-mixitup-control]'
        },
        load: {
            filter: '.engagement-ceremony'
        }
    });

但后来我收到了这个错误:Uncaught Error: [MixItUp] The provided selector yielded no container element

我很困惑为什么会这样出错。

编辑 因此,我能让它正常工作而不会出错的唯一方法是获取 mixitup 脚本的这一部分,并使用php 有条件地将其加载到我的主页上。一个困扰我的 hacky 修复,但它是唯一可行的方法。

【问题讨论】:

    标签: javascript jquery mixitup


    【解决方案1】:

    // Gallery Filtering
        var containerEl = document.querySelector('.gallery-container');
        var mixer;
    
        if (containerEl) {
            mixer = mixitup(containerEl, {
                 selectors: {
                     control: '[data-mixitup-control]'
                 },
                 load: {
                     filter: '.engagement-ceremony'
                 }
            });
        }

    我必须将脚本包装在 if 语句中。

    【讨论】:

      猜你喜欢
      • 2015-03-17
      • 2019-12-06
      • 2017-07-19
      • 2016-12-22
      • 1970-01-01
      • 1970-01-01
      • 2020-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多