Search code examples
javascriptjquerymixitup

Mix it up is not working in tab1 but working in another tab i.e tab2 in chrome and mobile devices


on document ready code to call mixitup function

if ($('.tab1').hasClass('active')) {
    initialize_mixitup('#mixitup_image_search_gallery', '#switchtogrid', '#switchtolist', '.mix_image', '.image_sort', 'grid', '');
}
$(".tab2").click(function () {
    initialize_mixitup('#your_books_image_gallery', '#yourbook_switchtogrid', '#yourbook_switchtolist', '.mix_book', '.book_sort', 'grid', '');
});


function initialize_mixitup(mixitup_container, grid_button, list_button, target_class, sort_class, default_layout, mix_callback) {
var layout = default_layout,
        $mixitupContainer = $(mixitup_container),
        $gridButton = $(grid_button),
        $listButton = $(list_button);

$mixitupContainer.mixItUp({
    selectors: {target: target_class, sort: sort_class},
    animation: {animateChangeLayout: true, animateResizeTargets: true, effects: 'fade rotateX(-40deg) translateZ(-100px)'},
    layout: {containerClass: default_layout},
    callbacks: mix_callback
});

Solution

  • Issue resolved by replacing the container Id of both the containers with container class.