JQuery Mobile - привязка к событию pageinit

Я пытаюсь понять следующий jQuery Mobile.

$( '#aboutPage' ).live( 'pageinit',function(event){
  alert( 'This page was just enhanced by jQuery Mobile!' );
});

Что такое #aboutPage в этом контексте? С чем связан объект pageinit?

Ответ 1

aboutPage должен быть идентификатором страницы. (iediv с data-role="page"). live() присоединяет определенную вами функцию, которая содержит событие alert в pageinit aboutPage. pageinit запускается на странице при инициализации страницы.

Итак, короче. Что делает ваш код, это

он выполнит оператор предупреждения, когда aboutPage будет инициализирован

Страница может быть инициализирована, даже если она не находится в режиме просмотра. Так что даже до того, как вы перейдете на эту страницу, будет активирован pageinit для div. Если вы загружаете другой html файл в качестве новой страницы pageinit поскольку эта страница будет запущена только при загрузке этой страницы в вид. Так что в вашем случае, если вы хотите что-то сделать, когда ваш div появится в поле зрения, вы можете попробовать pagebeforeshow и pageshow. pagebeforeshow будет запускается на новой странице до начала анимации и pageshow после окончания анимации.