Как отслеживать событие прокрутки с помощью jQuery Mobile, когда я возвращаюсь со страницы

#jquery #jquery-mobile

#jquery #jquery-mobile

Вопрос:

Я хочу отслеживать событие прокрутки с помощью jQuery, и оно работает при загрузке страницы, но когда я возвращаюсь с другой страницы, событие прокрутки не запускается.

Я создаю и приложение с помощью jQuery Mobile, я пробовал без библиотеки jQueryMobile и работает отлично.

У меня есть HTML-файл на страницу.

Это пример:

 <html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
        <script src="http://ajax.googleapis.com/ajax/libs/jquerymobile/1.4.2/jquery.mobile.min.js"></script>
    </head>
    <body style="height:200%;">
    <div data-role="page" id="page">
        <a href="http://google.com">link</a>
    </div>
        <script>
            //$(document).on("pageinit", "#page", function(event) {
            $(function(){
                $(window).on('scroll', function(){
                    console.log('scroll');
                });
            });
        </script>
    </body>
</html>
  

Когда я прокручиваю страницу при первой загрузке, в консоли отображается «прокрутка», но когда я нажимаю на ссылку и возвращаюсь на страницу, при прокрутке страницы ничего не происходит.

Ответ №1:

попробуйте использовать .bind и привяжите его к html и телу:

 $('html, body').bind('scroll', function(){
     console.log('scroll');
     });