Autor | Zpráva | ||
---|---|---|---|
Anonymouz Profil |
#1 · Zasláno: 1. 11. 2021, 13:21:47
Chci něco spustit po načtení prvku, který se načítá s prodlevou. Posílám ukázku jak jsem na to šel Živá ukázka Ukázka mi bohužel funguje pouze pokud je dlouhá prodleva načtení HTML elementu, ne pokud se načte pomocí JS.
Jde to nějak vyřešit přes promise, nebo to musím řešit taky přes setTimeout? |
||
Radek9 Profil |
#2 · Zasláno: 1. 11. 2021, 13:31:47
Anonymouz:
Brání ti něco přidat onload i tomu dynamicky vytvářenému obrázku?
|
||
Anonymouz Profil |
#3 · Zasláno: 1. 11. 2021, 13:44:10
Dostanu se pouze do kódu za čarou
//---- . Nedostanu se do html ani do js kódu který ten element vytváří.
|
||
Radek9 Profil |
Anonymouz:
Pokud víš, do jakého rodičovského prvku bude obrázek vložen, tak můžeš zkusit použít MutationObserver. const observer = new MutationObserver(() => { const img = document.querySelector('img') if (!img.onload) { g3_waitForToLoad(img).then(() => console.log('obrazek se načetl')) } }) observer.observe(document.body, { childList: true }) // tady ideálně něco konkrétnějšího než document.body Případně to prostě dát na nějaký nadřazený prvek (třeba právě document.body ) a použít ještě subtree :
observer.observe(document.body, { subtree: true, childList: true }) |
||
Časová prodleva: 2 roky
|
0