2012-12-03 2 views
0

Могу ли я вызвать событие OnLoad из document.ready в JQuery, как ниже:Вызов OnLoad событие из document.ready в JQuery

$(function() { 
onloadfunc(param); 
}); 

VS:

<body onload = "onloadfunc(param);"> 

Являются выше двух одинаковых?

Как я могу вызвать onloadfunc (param); в JQuery on Load, а не на DOM?

ответ

3

NOP, это:

$(function() { 
}); 

эквивалентно

$(document).ready(function(){ 
}); 

который срабатывает перед событии загрузки.

Вы можете позвонить onload с JQuery, как это:

$(window).load(function(){ 
}); 

-

, чтобы ответить на ваш вопрос, вы можете сделать что-то вроде этого:

$(document).ready(function(){ 
    $(window).load(function(){ 
     onloadfunc(param); 
    }); 
}); 

которым не лучший код, который я когда-либо писал ...: D

0

$ (document) .ready() Событие jQuery срабатывает раньше, чем onload. В ожидает событие нагрузки для всех активов, которые будут полностью загружены:

Хотя JavaScript предоставляет событие загрузки для выполнения кода, когда страница отображается, это событие не получает срабатывает до тех пор, все активы , такие как изображения, были полностью получено. В большинстве случаев сценарий можно запустить, как только будет построена иерархия DOM полностью . Обработчику, переданному в .ready(), гарантируется , выполненный после того, как DOM готов, поэтому это, как правило, лучшее место для , прикрепить все другие обработчики событий и запустить другой код jQuery. При использовании сценариев , которые полагаются на значение свойств стиля CSS, важно, чтобы ссылки на внешние таблицы стилей или элементы стиля встраивания составляли , ссылаясь на скрипты.

Смежные вопросы