-
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
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Fejhallgató erősítő és DAC topik
- Ventilátorok - Ház, CPU (borda, radiátor), VGA
- Mr Dini: Mindent a StreamSharkról!
- A fociról könnyedén, egy baráti társaságban
- Objektívek topikja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- A cégvezetők látják az AI költségeit, csak azt nem hogyan lesz ebből haszon
- Samsung Galaxy Felhasználók OFF topicja
- Gyúrósok ide!
- További aktív témák...
- 31,5" MSI MAG 325QF E18V
- HP EliteBook 830 G5 13,3" i7 8650u, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- HP EliteBook 830 G5, G6 13,3" i5, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- Akció!!! Microsoft Surface Laptop 4 13.5" i7-1185G7 16GB 512GB 1 év garancia
- HP EliteBook 840 G6, G5 14" i5, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Új Asus Vivobook 16 WUXGA IPS Ryzen5 7430U 16GB 512GB SSD Radeon RX Vega7 Graphics Win11 Garancia
- Apple iPhone 14 Pro Max 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Óriás! Gamer PC-Számítógép! Csere-Beszámítás! R5 5600XT / RTX 3070 8GB / 16GB DDR4 / 1TB SSD Nvme.
- AZONNAL KÉSZLETRŐL! Intel Core i5 14600K 64GB 6000MHz RAM 2TB Gen4 SSD RTX 5060 8GB FSP 750W
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
