Atributo defer de <script> en HTML

Definición y uso

defer Este atributo es un atributo booleano.

Si se ha configurado defer Este atributo especifica que el script se descargue y se ejecute en paralelo mientras se interpreta la página y se ejecute una vez que se complete la interpretación de la página.

Nota:defer Este atributo solo se aplica a scripts externos (sólo si existe Atributo src sólo debe utilizarse en este contexto).

Nota:Se puede ejecutar scripts externos de varias formas:

  • Si se ha configurado async: el script se descarga en paralelo mientras se interpreta la página y se ejecuta inmediatamente cuando esté disponible (antes de que se complete la interpretación)
  • Si se ha configurado defer (pero no async): el script se descarga en paralelo mientras se interpreta la página y se ejecuta una vez que se complete la interpretación de la página
  • Si no se han configurado ni async ni defer: el script se descarga y ejecuta inmediatamente, bloqueando la interpretación de la página hasta que el script se complete

Ejemplo

El script se descargará en paralelo con la análisis de la página y se ejecutará después de que la página se haya completado:

<script src="demo_defer.js" defer></script>

Pruebe usted mismo

Sintaxis

<script defer>

Retrasar la ejecución del script

Puede controlar la ejecución de scripts utilizando las propiedades async y defer. La propiedad defer le indica al navegador que debe esperar a que la página se haya cargado y analizado antes de ejecutar el script.

El navegador retrasará la carga y ejecución de scripts hasta que todos los elementos del documento HTML hayan sido analizados.

Esto es lo mismo que poner el script al final de la página:

<body>
... ...
... ...
... ...
<script src="demo.js"></script>
</body>

Compatibilidad del navegador

Los números en la tabla indican la versión del navegador que primero admite esta propiedad.

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
8.0 10.0 3.5 5.0 15.0