Как определить, находится ли элемент в окне просмотра без события прокрутки в Javascript / jQuery?

#javascript #jquery #css #html

#javascript #jquery #css #HTML

Вопрос:

Я хотел бы знать, существует ли способ определить, находится ли элемент в окне просмотра без события прокрутки в Javascript / jQuery?

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

Вот пример моей страницы :

https://drive.google.com/file/d/1-CBsed06QSxxCw5wy6N-DzTj46I9K-tl/view?usp=sharing

Я уже пробовал библиотеку jquery.visible и просматривал другие прослушиватели событий. Я попробовал свой код на обычной странице с обычным эффектом прокрутки, и он работает нормально, но не с моим фактическим эффектом прокрутки.

Вот как выглядит мой текущий код :

 jQuery(document).ready(function()
{
    // doesn't work
    jQuery(window).scroll(function()
    {
        myFunction();
    });

});
 

Спасибо!

Комментарии:

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

2. Я тоже так думаю, но тот факт, что я прокручиваю только один раз, не определяется функцией прокрутки как прокрутка…

3. что значит 1 прокрутка не обнаружена? и как JavaScript может узнать, что вы хотите проверить, находится ли элемент внутри окна просмотра при прокрутке, если вы не используете событие прокрутки?

4. В любом случае спасибо @Rory, я постараюсь это выяснить 🙂

5. @Mihai Ну, мне просто нужно прокрутить один раз, чтобы экран прокрутился до следующей части экрана, и, по-видимому, прослушиватель событий прокрутки не понимает, что я прокручиваю, потому что моя функция не запускается…