-
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
- Kertészet, mezőgazdaság topik
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- HiFi műszaki szemmel - sztereó hangrendszerek
- Poco X8 Pro Max - nem kell ide sem bank, sem akkubank
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Nyomtató topik
- Mibe tegyem a megtakarításaimat?
- A fociról könnyedén, egy baráti társaságban
- Lexus, Toyota topik
- sziku69: Szólánc.
- További aktív témák...
- i9-11900K / RTX 3080 / Z590i / 32GB 4000MHz / 1TB NVMe / 750w GOLD! BeszámítOK
- Gamer PC-Számítógép! Csere-Beszámítás! I5 9600KF / RTX 3060Ti / 16GB DDR4 / 256SSD + 2TB HDD
- Lenovo Legion Slim 5 Ryzen 7 7840HS 16GB 1000GB RTX 4060 OLED 120Hz 1év garancia
- PANASONIC Toughbook CF-53,i5-3340M,4GB RAM,500GB HDD,DVD,WIN10
- LG UltraGear 39GX90SA-W OLED Monitor! 3440x1440 / 240Hz / 0.03ms / FreeSync / G-Sync
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
