_addLoadEvent questo metodo serve a determinare se onload è stato chiamato più volte e, se viene chiamato più volte, le chiamate multiple verranno eseguite a loro volta in Window.onload
In realtà, è molto semplice: _addLoadEvent (func), passare una funzione e poi determinare se window.onload ha "vincolato" una funzione (cioè typeof(window.onload) != 'func'), e in caso contrario, eseguire direttamente la funzione func passata. Se è stato "vincolato", allora definisci sia la vecchia funzione che la nuova funzione all'interno di window.onload ed eseguilo contemporaneamente. cioè: window.onload = function(){ oldonload(); func(); }
Se una pagina ha più definizioni window.onload, spesso viene eseguita solo l'ultima definizione.
Parliamo della differenza tra window.onload, $(document).ready(function(){}) e $(window).load(function(){})!
Per prima cosa, confronta window.onload con $(document).ready(function(){}).
1. Tempo di esecuzione window.onload deve attendere che tutti gli elementi della pagina, comprese le immagini, siano caricati. $(document).ready()SìLa struttura DOM viene eseguita dopo il disegno, senza aspettare che venga caricata。
2. Scrivi il numero
window.onload non può essere scritto contemporaneamente; se ci sono più metodi window.onload, verrà eseguito soloUno $(document).ready() può essere scritto contemporaneamenteMultipli, e può essere eseguito
3. Semplificare il metodo di scrittura
window.onload non è semplificato $(document).ready(function(){}) può essere abbreviato come $(function(){});
La differenza tra $(window).load(function(){}) e window.onload è che $(window).load(function(){}) può scrivere più volte
|