_addLoadEvent denne metoden er for å avgjøre om onload har blitt kalt flere ganger, og hvis den kalles flere ganger, vil de flere kallene bli utført i Window.onload etter tur
Faktisk er det veldig enkelt, _addLoadEvent (func), sender inn en funksjon, og avgjør deretter om window.onload har "bundet" en funksjon (dvs. typeof(window.onload) != 'funksjon'), og hvis ikke, kjører du den passerte func-funksjonen direkte. Hvis den har blitt "bundet", definer både den gamle funksjonen og den nye funksjonen inne i window.onload og kjør den samtidig. dvs.: window.onload = function(){ oldonload(); func(); }
Hvis en side har flere window.onload-definisjoner, utføres ofte bare den siste definisjonen.
La oss snakke om forskjellen mellom window.onload, $(document).ready(function(){}), og $(window).load(function(){})!
Først, sammenlign window.onload med $(document).ready(function(){}).
1. Henrettelsestid window.onload må vente til alle elementer på siden, inkludert bilder, er lastet inn. $(dokument).klar()JaDOM-strukturen kjøres etter at den er tegnet, uten å vente på at den skal laste inn。
2. Skriv tallet
window.onload kan ikke skrives samtidig, hvis det finnes flere window.onload-metoder, vil den kun bli kjørtÉn $(dokument).ready() kan skrives samtidigFlere, og kan utføres
3. Forenkle skrivemetoden
window.onload er ikke forenklet $(document).ready(function(){}) kan forkortes som $(function(){});
Forskjellen mellom $(window).load(function(){}) og window.onload er at $(window).load(function(){}) kan skrive flere ganger
|