Trigger Mixitup过滤器OnLoad

时间:2015-01-06 20:22:18

标签: javascript jquery mixitup

我在ExpressionEngine网站上使用Mixitup(https://mixitup.kunkalabs.com)实用程序。该页面是房地产属性列表,Mixitup过滤器是按区域,功能等缩小这些属性。

我希望能够通过url_segment传递一些值来触发过滤器。因此,例如,如果用户点击分成不同市场的地图中的列表,他们将首先看到这些市场中的属性,就像他们从主页面中选择了它一样。

例如,默认视图是:

Default View

如果他们点击印第安纳州中部,其他地区就会消失,并打开一个子市场菜单:

Central Indiana Selected

如果他们进一步点击南方,则仅显示该子市场中的属性。在任何时候,他们都可以取消选择这些选项,并隐藏属性。

我想要做的是让用户能够访问已经选择了一些选项的页面:

Markets and Submarkets Pre-selected

在完成所有其他调用后,我尝试使用javascript点击元素:

<script>
     $(document).ready(function(e){
          setTimeout(function() {
               $("li.central-indiana").click();
          },10);
     });
</script>

扩展了菜单,但没有过滤属性(或应用“活动”类,但这不是真正的问题)。

我也尝试在页面末尾使用Mixitup的showOnLoad函数,并使用延迟计时器:

<script type="text/javascript">
    $("document").ready(function() {
        setTimeout(function() {
             $('#filter').mixitup(
                {'showOnLoad': 'central-indiana'}
             ); 
        },10);   
    });
</script>

暂时过滤了属性,但随后mixitup重置自己,并将它们全部显示出来。它也没有扩展菜单或应用“活动”类。

我在这里缺少什么?

谢谢,

TY

1 个答案:

答案 0 :(得分:4)

您需要在加载时设置要过滤的内容,如下所示:

$(function() {
    $('#filter').mixItUp({
        load: {
            filter: '.central-indiana'
        }
    });
});