Sto usando JavaScript con la libreria jQuery per manipolare le miniature delle immagini contenute in un elenco non ordinato. Quando l'immagine viene caricata fa una cosa, quando si verifica un errore fa un'altra cosa. Sto usando jQuery load()
e error()
metodi come eventi. Dopo questi eventi, controllo l'elemento DOM immagine per il .complete per assicurarmi che l'immagine non sia già stata caricata prima che jQuery possa registrare gli eventi.
Funziona correttamente tranne quando si verifica un errore prima che jQuery possa registrare gli eventi. L'unica soluzione a cui riesco a pensare è quella di utilizzare l' onerror
attributo img per memorizzare una "bandiera" da qualche parte a livello globale (o sul nodo stesso) che dice che non è riuscita, quindi jQuery può verificare che "store / node" quando controlli .complete.
Qualcuno ha una soluzione migliore?
Modifica: punti principali in grassetto e ulteriori dettagli aggiunti di seguito: sto verificando se un'immagine è completa (ovvero caricata) DOPO aver aggiunto un evento di caricamento ed errore sull'immagine. In questo modo, se l'immagine è stata caricata prima che gli eventi fossero registrati, lo saprò ancora. Se l'immagine non viene caricata dopo gli eventi, gli eventi se ne occuperanno. Il problema è che posso facilmente verificare se un'immagine è già stata caricata, ma non posso dire se si è verificato invece un errore.