_addLoadEvent този метод е да се определи дали onload е извикван многократно, а ако се извиква многократно, многократните повиквания ще бъдат изпълнени в Window.onload
Всъщност е много просто – _addLoadEvent (func), подадете функция и след това определите дали window.onload е "свързал" функция (т.е. typeof(window.onload) != 'функция'), а ако не, директно изпълнете предоставената функция func. Ако е "свързана", дефинирайте както старата, така и новата функция в window.onload и я изпълнете едновременно. т.е.: window.onload = function(){ oldonload(); func(); }
Ако една страница има няколко дефиниции window.onload, често се изпълнява само последната дефиниция.
Нека поговорим за разликата между window.onload, $(document).ready(function(){}) и $(window).load(function(){})!
Първо, сравнете window.onload с $(document).ready(function(){}).
1. Време за изпълнение window.onload трябва да изчака, докато всички елементи на страницата, включително изображенията, бъдат заредени. $(документ).готов()ДаDOM структурата се изпълнява след като е изтеглена, без да се чака зареждането。
2. Запишете числото
window.onload не може да се пише едновременно, ако има няколко метода window.onload, той ще се изпълнява самоЕдно $(document).ready() може да се пише едновременномножествено, и може да се изпълнява
3. Опростете метода на писане
window.onload не е опростен $(document).ready(function(){}) може да се съкрати като $(function(){});
Разликата между $(window).load(function(){}) и window.onload е, че $(window).load(function(){}) може да записва многократно
|