El uso de document.write()
puede retrasar la visualización del contenido de la página decenas de segundos y es particularmente problemático para los usuarios con conexiones lentas.
Por lo tanto, Chrome bloquea la ejecución de document.write()
en muchos casos, lo que significa que no puedes confiar en ella.
En la consola de Herramientas para desarrolladores de Chrome, verás el siguiente mensaje cuando uses document.write()
:
[Violation] Avoid using document.write().
En la consola de DevTools de Firefox, verás este mensaje:
An unbalanced tree was written using document.write() causing
data from the network to be reparsed.
Por qué falla la auditoría de document.write()
de Lighthouse
Lighthouse marca las llamadas a document.write()
que Chrome no bloqueó:
En los casos más problemáticos, Chrome bloqueará las llamadas a document.write()
o emitirá una advertencia de la consola sobre ellas, según la velocidad de conexión del usuario.
De cualquier manera, las llamadas afectadas aparecen en la consola de DevTools.
Consulta el artículo Intervención contra document.write()
de Google para obtener más información.
Lighthouse informa las llamadas restantes a document.write()
porque afecta negativamente el rendimiento, independientemente de cómo se use, y existen mejores alternativas.
Evita document.write()
Quita todos los usos de document.write()
en tu código. Si se usa para insertar secuencias de comandos de terceros, prueba usar la carga asíncrona.
Si el código de terceros usa document.write()
, pídele al proveedor que admita la carga asíncrona.