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>
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 |