Táto stránka používa súbory cookies, ktoré nám pomáhajú poskytovať služby. Používaním našich služieb vyjadrujete súhlas s používaním súborov cookies. Viac informácií nájdete tu.
Súbory cookies používame pre správne fungovanie našej webovej stránky a jej funkcií. Pomocou súborov cookies si tiež napríklad pamätáme váš preferovaný jazyk, zvyšujeme pre vás relevantnosť zobrazovaných reklám, počítame návštevnosť stránok a pamätáme si vaše nastavenia vykonané na stránke.
Strom katalpa...,Hortenzia...,Kríky...,Rododendróny..,Trvalky...,Kvetináče...,Substráty...,Napíšte sem čo hľadáte,Záhradné umývadlo...,Fotínia...,Napíšte sem čo hľadáte..,Palmy,Myrta krepová,Hnojivo na trávnik...
// --- ASZTALI ÉS MOBIL KATEGÓRIA MODÁL VEZÉRLŐ ---
// VÉGLEGES VERZIÓ A MOBIL KLIKK PROBLÉMA MEGOLDÁSÁRA ERŐS ESEMÉNYKEZELÉSSEL
if (typeof jQuery === 'undefined') {
console.error("Hiba: jQuery nem elérhető.");
} else {
jQuery(document).ready(function($) {
// 1. Kategória lista forrása
const $categoryList = $('ul.tree_menu.tree_menu_big').first();
// 2. Asztali trigger elem
const $targetElementDesktop = $('.mega-menu-trigger').first();
if ($categoryList.length && $targetElementDesktop.length) {
// --- Modál struktúra létrehozása (Mint a korábbi, stabil asztali verzióban) ---
const $clonedCategories = $categoryList.clone();
$clonedCategories.addClass('category-modal-content');
$clonedCategories.attr('id', 'categories-modal');
$clonedCategories.find('li').each(function() {
const $link = $(this).find('a').first();
const $linkHtml = $link.html();
const $linkHref = $link.attr('href');
$(this).html(`${$linkHtml}`);
});
const $closeButton = $('');
const $modalContainer = $('');
$modalContainer.append($closeButton);
$modalContainer.append($clonedCategories);
$('body').append($modalContainer);
// FUNKCIÓK
const openModal = () => {
$('.category-modal-wrapper').addClass('is-open');
$('body').css('overflow', 'hidden');
};
const closeModal = () => {
$('.category-modal-wrapper').removeClass('is-open');
$('body').css('overflow', '');
};
// --- 3. ESEMÉNYKEZELÉS: ASZTALI (STABIL) ---
// Közvetlen kattintás kezelés az asztali linkre
$targetElementDesktop.on('click', function(e) {
console.log('--- ASZTALI: Kattintás elkapva (.mega-menu-trigger) ---');
e.preventDefault(); // Megakadályozza a navigációt
openModal();
});
// --- 4. ESEMÉNYKEZELÉS: MOBIL (FELÜLÍRVA) ---
// Megkeressük a mobilos menü "Kategórie" linkjét.
// A "visszatérés" (`:contains("return false")`) egy kiegészítő ellenőrzés
// arra, hogy a kategória link létezik és kattintható.
const $targetElementMobile = $('a:contains("Kategórie")').filter(':visible').last();
if ($targetElementMobile.length) {
// --- A KULCS: Erős felülírás a .off('click') és a return false használatával ---
// 1. Megpróbáljuk eltávolítani a külső click eseménykezelőket, ha léteznek.
$targetElementMobile.off('click').off('touchstart');
// 2. Hozzáadjuk a mi új, erős eseménykezelőnket.
$targetElementMobile.on('click', function(e) {
console.log('--- MOBIL: Esemény felülírva, megnyitás! ---');
// A return false megelőzi az alapértelmezett viselkedést (navigáció)
// ÉS leállítja a kattintás buborékolását (ami bezárhatná a menüt).
openModal();
return false;
});
// Mivel néhány mobil böngésző a touchstart-ot is figyeli, ezt is lekezeljük:
$targetElementMobile.on('touchstart', function(e) {
// Megakadályozza a touch események átalakulását click-ké,
// de hagyja, hogy a click eseményünk fusson.
e.stopPropagation();
});
console.log("Mobil trigger felülírva a 'return false' módszerrel.");
} else {
console.log("Nem található látható 'Kategórie' link a mobil menüben. Csak az asztali nézet aktív.");
}
// --- 5. BEZÁRÁS LOGIKA (Változatlan és stabil) ---
$('.modal-close-btn').on('click', closeModal);
$('.category-modal-wrapper').on('click', function(e) {
if ($(e.target).hasClass('category-modal-wrapper')) {
closeModal();
}
});
$(document).on('keydown', function(e) {
if (e.key === "Escape" || e.key === "Esc") {
closeModal();
}
});
console.log('Kategória modal szkript sikeresen inicializálva (Végleges, mobil felülírással).');
} else {
// Hibajelentés, ha a forrás vagy a cél nem található
let errorMessage = 'Hiba a Mega Menü inicializálásakor: ';
if (!$categoryList.length) {
errorMessage += 'Nem található a kategória forrás (ul.tree_menu.tree_menu_big). ';
}
if (!$targetElementDesktop.length) {
errorMessage += 'NEM található az asztali cél menüpont. Kérjük, ellenőrizze, hogy a KATEGÓRIE menüpont beállításaiban megadta-e a "mega-menu-trigger" osztályt!';
}
console.error(errorMessage);
}
});
}