L'utilizzo di document.write()
potrebbe ritardare di decine di secondi la visualizzazione dei contenuti della pagina
ed è particolarmente problematico per gli utenti con connessioni lente.
Pertanto, in molti casi Chrome blocca l'esecuzione di document.write()
,
il che significa che non puoi fare affidamento su questo metodo.
Nella console di Chrome DevTools viene visualizzato il seguente messaggio quando utilizzi document.write()
:
[Violation] Avoid using document.write().
Nella console di DevTools di Firefox viene visualizzato questo messaggio:
An unbalanced tree was written using document.write() causing
data from the network to be reparsed.
Come non va a buon fine il controllo document.write()
di Lighthouse
Lighthouse segnala le chiamate a document.write()
che non sono state bloccate da Chrome:
Per gli utilizzi più problematici, Chrome bloccherà le chiamate a document.write()
o emetterà un avviso della console in merito, a seconda della velocità di connessione dell'utente.
In ogni caso, le chiamate interessate vengono visualizzate nella console DevTools.
Per ulteriori informazioni, consulta l'articolo di Google Intervenendo contro document.write()
.
Lighthouse segnala eventuali chiamate rimanenti a document.write()
perché influiscono negativamente sul rendimento indipendentemente da come vengono utilizzate
e perché esistono alternative migliori.
Evita document.write()
Rimuovi tutti gli utilizzi di document.write()
nel codice. Se viene utilizzato per iniettare script di terze parti, prova a utilizzare il caricamento asincrono.
Se il codice di terze parti utilizza document.write()
,
chiedi al provider di supportare il caricamento asincrono.