Cita:
Iniciado por sfvgekko Hola
He leido que para asegurarnos en JS que un codigo se ejecuta antes de cargar completamente la pagina conviene incluirlo dentro de esta funcion:
$(document).ready(function() {
}
Asi lo hago habitualmente, meto ahi todo el codigo JS, y hago las capturas de los eventos desde aqui con jquery por ejemplo:
$('#boton_1').click(function() {
nuevoDato();
});
Sin embargo si intento hacer lo mismo colocando un evento inline con una llamada a una funcion en el propio codigo HTML asi:
<button type="button" id="boton_1" onclick="nuevoDato();">Texto</button>
He observado que solo funciona siempre que la funcion nuevoDato() este definida fuera de ese $document.ready
Imagino que la solucion es meter dentro de esa funcion ready el codigo que quiero que se ejecute por fuerza antes de cargar la pagina y dejar fuera el resto, pero porque sucede esto, porque no funciona esa funcion metida dentro del ready?
Gracias
Para no dejarlo en el aire y evitar confusiones, el concepto es al revés. el evento ready se inicia cuando todo el árbol del documento ha sido cargado, es decir que es "posterior" a la lectura del DOM y no anterior.
Saludos