Предположим, у меня есть:
<script src="script1.js"></script>
<script src="script2.js"></script>
Оба этих скрипта имеют внутри ready ()
. Будет ли код в script2.js ready ()
всегда выполняться после первого?
Да.
Прежде всего, код в script2.js
будет выполнен после script1.js
, как это будет позже в документе (и атрибут defer
не установлен).
Кроме того, реализация [источник] sup> функции ready
имеет вид:
ready: function( fn ) {
// Attach the listeners
jQuery.bindReady();
// Add the callback
readyList.done( fn );
return this;
},
где readyList
представляется [source] sup> a отложенный объект [docs] sup> , Это означает, что обратные вызовы выполняются в том порядке, в котором они были добавлены к этому объекту.
.ready()
функции вызываются при первой зарегистрированной процедуре получения первой обработки