Javascript események a dinamikus tartalom hozzáadása után - verem túlcsordulás oroszul
Ezt a kérdést már megválaszolták:
Kérjen egy kényelmes módot arra, hogy az elemek dinamikus hozzáadását követően felfüggeszti az eseményeket. Például, ha a tartalmat ajax-on keresztül töltötte le.
Ehhez a kódhoz hasonlóan ki kell dolgoznom: $ ('Colorbox') Colorbox ();
Ie Az eseményeket az $ (document) .on () fájlon keresztül kötem össze. így dolgoznak ki. A harmadik féltől származó bővítmények eseményei eltérő módon valósulnak meg, ezért a dinamikus tartalom letöltés után nem kerülnek végrehajtásra.
Jelenleg $ (dokumentum) .ajaxSuccess () -et használok a harmadik féltől származó plug-inek eseményeinek összerendeléséhez, miután a tartalmat az ajax használatával töltötte le.
Arra gondolok, vajon elegánsabb megoldás-e ez a probléma.
Hasonló kérdést kértek korábban, és már kapott választ. Ha a válaszok nem teljesek, kérdezze meg új kérdését.
Számos lehetőség van arra, hogyan lehet lefagyni egy eseményt egy dinamikus elemen.
Először is, a rendező valamilyen eseményen akasztja:
DOM eseményekkel is játszhat: DOM események.
A jQuery olyan elemekkel működik együtt, amelyek az oldalon voltak, amikor a kódot inicializálta.
Ha új elemek vannak hozzáadva - az ajax használatával vagy az append () függvényekkel -, akkor az események nem érinti őket.
Hogyan dolgozhatok az újonnan létrehozott DOM elemekkel?
Kiderül, hogy a dinamikus elemek delegált eseménykezelést használnak.
Röviden, a küldetés jelentése, hogy a kezelők "nem" vannak felfüggesztve, hanem a meglévő szülőobjektum hiányzó elemein.
a válasz szeptember 26-án, 15:25 órakor érkezik
Próbálja közvetlenül hívni:
A jquery élő már elavult.
Jobb használni
jquery élő ("kattintás", visszahívás) vagy ("kattintás", visszahívás)