2015-05-16 1 views
5

In Gecko/Firefox ho ricevuto il messaggio di errore:JavaScript readAsDataurl non è una funzione

TypeError: fr.readAsDataurl is not a function

Utilizzando il seguente JavaScript:

var fr = new FileReader(); 
fr.readAsDataURL(files[i]); 
+0

@MartijnPieters Ho fatto la domanda nella maniera in cui altri che lo incontrerebbero avrebbero chiesto e pubblicato la risposta nel modo adatto alla situazione. Stai suggerendo di pubblicare la risposta all'interno della domanda? Non sarebbe logico. – John

+1

Ah, mi dispiace, mi sono perso perché tu avevi creato una risposta personale qui. Errore mio! –

+1

Grazie. Ho incontrato lo stesso problema – 32teeths

risposta

7

Come si è visto qualcuno in Mozilla ha creato il metodo deprecato readAsDataurl con l'involucro delle lettere improprio e dal momento che JavaScript è case sensitive ho semplicemente dovuto usare il metodo readAsDataURL (URL maiuscolo):

if (fr.readAsDataURL) {fr.readAsDataURL(files[i]);} 
else if (fr.readAsDataurl) {fr.readAsDataurl(files[i]);} 

Si noti che il metodo di alloggiamento standard/corretto viene rilevato prima. Se vuoi che il tuo codice funzioni il più rapidamente possibile, le prestazioni miglioreranno nel tempo man mano che il supporto degli standard migliora.