¿Cuál es la diferencia entre $(window).load(function() {})y $(document).ready(function() {})en jQuery?
216
document.readyes un evento jQuery, se ejecuta cuando el DOM está listo, por ejemplo, todos los elementos están ahí para ser encontrados / utilizados, pero no necesariamente todo el contenido .window.onloadse dispara más tarde (o al mismo tiempo en los peores / fallidos casos) cuando se cargan imágenes y demás, por lo que si usa dimensiones de imagen, por ejemplo, a menudo quiere usar esto en su lugar.
$(document).ready(function(){})is$(function(){})y otra diferencia importante de window.load es que se ejecutará en TODAS las llamadas futuras de la función, incluso después del DOMready inicial.$(window).on('load'). Ambos haciendo referencia al evento de carga .it will run on ALL future calls of the function?$(document).readycódigo una vez que el DOM está listo. Es un caso de uso tan pequeño que probablemente no valía la pena confundir a todos con mencionarlo. 2) El ENTORNO solo llama$(document).ready(function(){})una vez, cuando el DOM está listo. Si el usuario, por alguna razón, ejecuta más$(document).readydespués de que el DOM esté listo, entonces sí, se ejecutará de inmediato.fuente
El
$(window).load()NO está disponible en jQuery 3.0Para evitarlo, puede usarlo como un "Anexo de controlador de eventos"
fuente
Las diferencias son:
$(document).ready(function() {es un evento jQuery que se activa cuando se carga DOM, por lo que se activa cuando la estructura del documento está lista.$(window).load()El evento se activa después de cargar todo el contenido.fuente
window.load se activará después de cargar todo el contenido del iframe
fuente
$(document).readysucede cuando todos los elementos están presentes en el DOM, pero no necesariamente todo el contenido.window.onloado$(window).load()sucede después de que se hayan cargado todos los recursos de contenido (imágenes, etc.).fuente
Desde jquery prospective, solo agrega
load/onloadevento a la ventana y al documento. Mira esto:window.onload vs document.onload
fuente
document.ready (jQuery) document.ready se ejecutará justo después de que se cargue el documento HTML y el DOM esté listo.
DOM: el Document Object Model (DOM) es una convención multiplataforma e independiente del lenguaje para representar e interactuar con objetos en documentos HTML, XHTML y XML.
window.load (JavaScript incorporado) Sin embargo, window.load esperará a que la página se cargue por completo, esto incluye marcos internos, imágenes, etc. * window.load es un método de JavaScript incorporado, se sabe que tiene algunos peculiaridades en los navegadores antiguos (IE6, IE8, versiones antiguas de FF y Opera), pero generalmente funcionarán en todos ellos.
window.load se puede usar en el evento de carga del cuerpo como este (pero le sugiero encarecidamente que evite mezclar código como este en el HTML, ya que es una fuente de confusión más adelante):
fuente
fuente
Creo que el
$(window).loadevento no es compatible con JQuery 3.xfuente
De acuerdo con DOM Level 2 Events,
loadse supone que el evento se activadocument, no se activawindow. Sin embargo,loadse implementawindowen todos los navegadores para la compatibilidad con versiones anteriores.fuente