En condiciones normales, las secuencias de comandos insertadas en el HTML se invocan inmediatamente después de cargarlas. A veces, los scripts comienzan a ejecutar instrucciones relacionadas con DOM incluso antes de que el navegador termine de analizar el HTML y configure la estructura DOM, lo que impide que el código JS funcione correctamente. Para evitar que esto suceda, tiene cuatro opciones.
- atributo
async
: puede agregar el atributoasync
a su etiqueta de script comoconsecuencia, el script externo se carga de forma asíncrona junto con el DOM. Ni la carga del script bloquea el análisis HTML ni tiene el efecto de una invocación prematura del script. Supongo que esto es lo mejor de ambos mundos.
- atributo de
defer
: puede agregar el atributo dea su etiqueta de secuencia de comandos como
consecuencia, la secuencia de comandos externa se carga solo después de analizar el HTML a pesar de estar incluido en la parte superior, en la sección
.
- Reubicar la etiqueta del script: este es el truco más antiguo para evitar esta situación. En este caso, incluye la etiqueta de secuencia de comandos en la parte inferior de su HTML, preferiblemente justo antes de
y se carga e invoca después de analizar el HTML.
- En caso de que el archivo de script sea local y no desee utilizar las opciones dadas anteriormente, otro enfoque sería envolver su script en una función y asignarlo como un controlador al detector de eventos
window.onload
como se muestra a continuación. Es como una cuña paradefer
atributo, supongo.
// su archivo script.js tiene este aspecto
window.onload = function () {
var el = document.getElementById (“type1”);
console.log (el);
};
- ¿Dónde es un buen punto de partida para aprender JavaScript?
- ¿Es posible aprender más de un lenguaje de programación a la vez? ¿Qué se requiere para hacerlo de la manera correcta?
- ¿Cuáles son algunos sitios web que utilizan un esquema piramidal legal?
- ¿Los archivos html tienen información secreta?
- Weebly sigue fallando debido a mis lentos datos móviles. No puedo usar otro WiFi. ¿WordPress es más estable que Weebly?