Hogyan lehetne ezt a jquery problémát megoldani?
Itt van ez a kód.
$(".mini-cart .mini-cart-dropdown").slideUp();
$(".mini-cart").mouseenter(function () {
$(this).find(".mini-cart-dropdown").slideDown()
}), $(".mini-cart").mouseleave(function () {
$(this).find(".mini-cart-dropdown").delay(2000).slideUp();
});
A lényeg hogy ha a .mini-cart div fölé viszem az egeret lenyit egy másik divet, ha elhagyja az egér a terültet csukja vissza. Működik is, de a gond az hogy sokszor ha egyszer viszem föléje az egeret kétszer nyitja le egymás után. Hogy lehetne ezt megoldani?
Használd az event.stopImmediatePropagation() objektumot.
Megakadályozza, hogy ugyanazt az eseményt újra meghívja egy másik kezelő ugyanabban a pillanatban.
Ok kösz a második válasz hasznos volt. Ez lett a kód végül.
var $target;
$(".mini-cart").on('mouseenter', function(event) {
$target = $(event.currentTarget);
$target.find(".mini-cart-dropdown").stop(true, true).slideDown()
}).on('mouseleave', function(event) {
$target = $(event.currentTarget);
$target.find(".mini-cart-dropdown").stop(true, true).delay(1500).slideUp();
});
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!