jquery mobile загрузить внешнюю страницу, события не запускаются

Я хочу перейти на внешнюю мобильную страницу jquery, но ни одно событие не получает триггер при вызове перехода:

jQuery("#test1").on("pagebeforeshow", function(event) {
            WL.Logger.debug("pagebeforeshow: test1");
        });

function loadHTML(){
        $.mobile.pageContainer.pagecontainer("load", "./pages/test1/test1.html", {});

    }
    function openHTML(){
        $.mobile.pageContainer.pagecontainer("change", "./pages/test1/test1.html", {});
    }

и это содержание моего HTML:

<div data-role="page" id="test1">
    <div data-role="content" style="padding: 15px"></div>
</div>

Есть ли способ использовать любое событие?

1 ответ

Решение

Чтобы прикрепить обработчик pagebeforeshow к странице, которая еще не загружена в DOM, необходимо использовать делегирование событий:

https://learn.jquery.com/events/event-delegation/

jQuery(document).on("pagebeforeshow", "#test1" function(event) {...
Другие вопросы по тегам