Обработчик событий на index.html

Здравствуйте.

pageInit - срабатывает, только если кликнуть по ссылки, т.е. вызвать открытие страницы через роутер. Поэтому весь код, который прописан в

 app.on('pageInit', function (page) {
    // do something on page init
    console.log ('pg init')
$$('.select_this').on('click', function (e) { });
  });

не сработает. Т.е. не могу повесить обработчик события в этом блоке кода в роутере.

А если прописать код просто в App.JS, тогда при повторном открытии страницы, перестаёт действовать обработчик события на кнопке

Приходится 2 раза прописывать код и там и там. Не проблема, но может есть какой-то более правильный способ. Спасибо.

Если кратко - хочу просто повесить обработчик события на кнопку, которая на галвной страницу index.html

$$(’.select_this’).on(‘click’, function (e) { });

Что бы он работал всегда

Спасибо

Используйте Router Component Router Component | Framework7 Documentation, там каждая страница это отдельный файл со своими шаблонами и скриптами.

Ну или можно просто создать событие на родителе так

$$(document).on('click', '.select_this', function (e) { });
});
1 Like