2017-07-17 43 views
1

在我的主页我已经mixitup使用这个工作:误差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。困扰我的黑客修复,但它唯一的办法。

回答

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声明。