jQuery Mobile - привязка к событию Pageinit - PullRequest
10 голосов
/ 11 октября 2011

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

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

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

1 Ответ

13 голосов
/ 11 октября 2011

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

Итак, вкратце, что делает ваш код

будет выполнять оператор оповещения при инициализации aboutPage

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

...