????
Current Path : /home/multihiv/www/store/wp-content/themes/js/scripts/menu/ |
Current File : //home/multihiv/www/store/wp-content/themes/js/scripts/menu/categoriesMenu.js |
/* global woodmart_settings */ (function($) { woodmartThemeModule.$document.on('wdShopPageInit', function() { woodmartThemeModule.categoriesMenuBtns(); woodmartThemeModule.categoriesMenu(); }); jQuery.each([ 'frontend/element_ready/wd_product_categories.default', 'frontend/element_ready/wd_page_title.default', ], function(index, value) { woodmartThemeModule.wdElementorAddAction(value, function() { woodmartThemeModule.categoriesMenuBtns(); woodmartThemeModule.categoriesMenu(); }); }); woodmartThemeModule.categoriesMenu = function() { var $categories = $('.wd-nav-product-cat'); if (woodmartThemeModule.$window.width() > 1024) { $categories.stop().attr('style', ''); } var time = 200; $categories.each(function() { var $productCat = $(this); var $thisCategories = $productCat.parents('.wd-nav-accordion-mb-on'); var $showCat = $thisCategories.find('wd-btn-show-cat'); var isAccordionOnMobile = $thisCategories.hasClass('wd-nav-accordion-mb-on'); var isOpened = function() { return $productCat.hasClass('categories-opened'); }; var openCats = function() { $showCat.addClass('wd-active'); $productCat.addClass('categories-opened').stop().slideDown(time); woodmartThemeModule.$document.trigger('wood-images-loaded'); }; var closeCats = function() { $showCat.removeClass('wd-active'); $productCat.removeClass('categories-opened').stop().slideUp(time); }; $thisCategories.find('.wd-nav-opener').off('click').on('click', function(e) { var $this = $(this); e.preventDefault(); if ($this.closest('.has-sub').find('> ul').hasClass('child-open')) { $this.removeClass('wd-active').closest('.has-sub').find('> ul').slideUp(time).removeClass('child-open'); } else { $this.addClass('wd-active').closest('.has-sub').find('> ul').slideDown(time).addClass('child-open'); } woodmartThemeModule.$document.trigger('wood-images-loaded'); }); $thisCategories.find('.wd-btn-show-cat > a').off('click').on('click', function(e) { e.preventDefault(); if (isAccordionOnMobile) { if (isOpened($productCat)) { closeCats(); } else { openCats(); woodmartThemeModule.$document.trigger('wood-images-loaded'); } } }); $thisCategories.find('.wd-nav-product-cat a').off('click').on('click', function(e) { if (!$(e.target).hasClass('wd-nav-opener')) { closeCats(); $productCat.stop().attr('style', ''); } }); }); }; woodmartThemeModule.categoriesMenuBtns = function() { $('.wd-nav-product-cat.wd-mobile-accordion').each(function() { var $this = $(this); var iconDropdown = '<span class="wd-nav-opener"></span>'; var $ulWrapper = $this.find('li > ul').parent(); var $navOpeners = $ulWrapper.find('.wd-nav-opener'); if ( ('undefined' !== typeof elementor && elementor.hasOwnProperty('$preview') && elementor.$preview.width() > 1024) || woodmartThemeModule.windowWidth > 1024 ) { $navOpeners.remove(); return; } $navOpeners.remove(); $ulWrapper.addClass('has-sub').append(iconDropdown); }); }; woodmartThemeModule.$window.on('resize', woodmartThemeModule.debounce(function() { woodmartThemeModule.categoriesMenuBtns(); woodmartThemeModule.categoriesMenu(); }, 300)); $(document).ready(function() { woodmartThemeModule.categoriesMenuBtns(); woodmartThemeModule.categoriesMenu(); }); window.addEventListener('popstate', function() { woodmartThemeModule.categoriesMenuBtns(); woodmartThemeModule.categoriesMenu(); }); })(jQuery);