Aby accordion ostal zatvorený

Elementor je fakt super, ale v niektorých veciach je tak blbý, až strach. Napríklad, keď použiješ niekde accordion, ale nechceš, aby sa automaticky prvá položka otvorila. Chceš ho mať proste zavretý. Normálny človek by očakával nejaký checkbox, ktorým sa to bude dať nastaviť. Ale NE!

Nič sa nedá robiť, nastupuje javascript...

Alebo lepšie povedané jQuery. Pár riadkov kódu a funguje like a boss. 

				
					jQuery(document).ready(function($) {
var delay = 1000; setTimeout(function() {
$('.lava-hide .elementor-tab-title').removeClass('elementor-active');
 $('.lava-hide .elementor-tab-content').css('display', 'none'); }, delay);
});
				
			

Vybraný accordion si označíme classou lava-hide. Ak chceme mať zatvorené komplet všetky accordiony na stránke, tak proste v riadkoch 3 a 4 odstránime .lava-hide, zbytok ostáva. 

Celú funkciu musíme dať do nejakého timeoutu, čiže sa spustí s oneskorením jednej sekundy, lebo accordion sa samootvorí nie pri document.ready(), ale až potom. Nastavením timeoutu si proste zrobíme to čo chceme, napriek defaultnému správaniu elementorackého javasciptu. Delay podľa potreby môžeme upravovať na také číslo, ktoré nám bude vyhovovať. 

Pozor: Tento kód nevkladáme do functions.php lebo to nie je PHPčko, ale javascript. Vkladáme ho teda napr. do Elementor -> Vlastný kód -> Pridať nový a nezabudneme na začiatok hodiť ešte <script> a na konci uzavrieť </script>

Podobné články

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *