Итак, на веб-странице есть некоторые компоненты, которые необходимо переставлять всякий раз, когда окно браузера изменяется или прокручивается.
$( window ).on( 'resize scroll', reposition );
где reposition
- это функция, которая это делает.
Однако эту функцию также нужно вызывать немедленно. (Под «немедленной» я имею в виду инициализацию страницы - внутри DOM-ready.) Это необходимо сделать для установки начальных позиций компонентов.
В настоящее время я делаю это так:
$( window ).on( 'resize scroll', reposition );
reposition();
Я заметил, что это также работает:
$( window ).on( 'resize scroll load', reposition );
Я считаю, что это надежно - load
никогда не срабатывает до события DOMContentLoaded
.
Но это задерживает выполнение до тех пор, пока не будут загружены все ресурсы страницы (что может занять несколько секунд в зависимости от количества изображений на странице). Есть ли способ сообщить jQuery, что связанная функция должна быть также вызвана немедленно?
Как:
$( window ).on( 'resize scroll now', reposition );
или
$( window ).on( 'resize scroll ()', reposition );
Эти примеры, конечно, недействительны, но мне было интересно, если метод jQuery on
обладает такой функциональностью. Я думаю, я мог бы вручную реализовать эту функцию в on
, но я хотел бы сначала проверить, есть ли она уже ...