-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
K1nG HuNp
őstag
Még kicsit a DOM-nál maradva: egész sokat foglalkozok animációkkal és kellene egy sajat framework, mert hogy netem nem talaltam ami megkönnyíti a dolgom.
Az animacioim amiket hasznalok mindig a CSS-ben vannak, megirom a @keyframest aztan egy classt ami tartalmazza az adott animaciot idovel stb.
Pelda:.enter {
animation: enter 10s ease;
}
@keyframes enter {
0% {
transform: scale(.1);
}
100% {
transform: scale(1);
}
}Ezt a classt csak hozzacsapom ahhoz a dom elementhez amit animalni szeretnek es kesz.
Erre irtam egy nagyon egyszeru fuggvenyt:function classAnimator(dom,className) {
dom.classList.add(className);
dom.addEventListener("animationend", clearIt);
function clearIt(){
dom.classList.remove(className);
dom.removeEventListener("animationend", clearIt);
}
}Amit igy hivok meg:
const button = document.getElementById("testButton");
const box = document.getElementById("box");
button.addEventListener("click", ()=>{classAnimator(box, "enter")})Köv lépésben azt szeretném megcsinálni, hogy a
button-ról leveszem aclickevent listenert, tehat amig tart az animacio ne erdekelje, hogy nyomkodjak.
De elakadtam.Van egy csunya megoldas amiben egy glob valtozoban kellene tarlonom, hogy "clicked"-e a
buttones ha igen akkor instant returnol aclassAnimator. De ja ez csúnya.Próbáltam még klónozni az event.target-et ami ugye a
buttonjelen esetben, ez patentül működött is mert leszedte az eventListenert (bar az osszes gyerekerol leszedne de most ez még nem zavar), de utána nem tudtam értelmesen visszatenni rá mert valami para volt a masodik lefutastol a "parentNode"-valvar clone = event.target.cloneNode(true);
event.target.parentNode.replaceChild(clone, event.target);Ti hogyan oldanátok meg a problémát?
Tehat az a vegso cel, hogy egy gomb, kep, barmi eventlistenerbe belerakom a fuggvenyem, megadom neki mit animaljon, megcsinalja az animaciot, utana leszedi az animacio class-t, es az egesz kozben blokkolja az ujabb eventeket a gomb/kep/barmi -rol.
Új hozzászólás Aktív témák
- Crucial BX500 500GB 2,5" SSD
- Samsung 960 EVO 250GB M2 NVMe SSD
- Inno3D RTX 3070 ICHILL 8GB / Csavarmatricás! / Beszámítás OK!
- Eladó Konfig Intel Core Ultra 7 265KF 32GB DDR5 2TB SSD RTX5070Ti 16GB O11 EVO Lamborghini!
- Bontatlan Dobozos Új Lenovo Thinkpad T14 G5 Laptop 14" -45% Ultra 7 155U 32/512 FHD+ Magyar!
- Behringer B-CONTROL BCF2000 USB/MIDI kontroller
- Dell Latutide E7270, 7280, i5- i7, 8GB RAM, 256gb ssd, EU bill., számla, 6 hó gar - több db
- Dell Latitude E7470. Olcsó üzleti kategóriás laptop! Új akkumulátor!
- Samsung Galaxy S25 Ultra 256GB,Újszerű,Dobozaval,12 hónap garanciával
- Apple iPhone 12 Pro / 128GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

