Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Скроллинг страницы с остановкой в определенных точках (https://javascript.ru/forum/misc/75490-skrolling-stranicy-s-ostanovkojj-v-opredelennykh-tochkakh.html)

alexkirsanov850@gmail.com 14.10.2018 21:36

j0hnik,
Как я понял, при прокрутке колесика генерируются события onwheel и встают они в очередь событий.
Быть может можно почистить ?

j0hnik 14.10.2018 21:38

Цитата:

Сообщение от alexkirsanov850@gmail.com
посмотрите. Очень наглядно. Эффект "затухания" и событие onwheel возникает многократно

где тут затухание?

j0hnik 14.10.2018 21:39

Цитата:

Сообщение от alexkirsanov850@gmail.com
onwheel и встают они в очередь событий.

нет у вас никакой очереди, обработчик ловит событие и выполняет функцию =)

alexkirsanov850@gmail.com 14.10.2018 21:45

?)
как тогда объяснить нижеследующее:
var onWheelCount = 0;
        window.onwheel = function(e) {
            var delta = e.deltaY;
            onWheelCount++;
            document.title = onWheelCount;
            window.scrollBy(0, delta);
        }


Попробуйте "крутануть" колесико мыши.
Значение onWheelCount у меня получается 20-70
Следовательно onwheel возникает 20-70 раз

Или я не прав?)

j0hnik 14.10.2018 21:51

значение все время увеличивается, каждая единичка это сработавший обработчик, это да, но никакой очереди нет.

j0hnik 14.10.2018 22:01

alexkirsanov850@gmail.com,
комп слишком быстр чтобы такую простую функцию не успевать выполнять на лету.

alexkirsanov850@gmail.com 14.10.2018 22:05

j0hnik,

Я не разработчик на js и моя работа даже близко не связана с разработкой в принципе, но мне интересно разобраться в вопросе.

Я в совершенстве владею Delphi и выполнить могу практически любую задачу. Не плохо C++ от того, мы с вами можем спокойно говорить на одном языке

alexkirsanov850@gmail.com 14.10.2018 22:06

j0hnik,
мне абсолютно ясно, что просто так значения deltaY возникать не могут

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

alexkirsanov850@gmail.com 14.10.2018 22:09

j0hnik,
и судя по всему, поворот колесика, в зависимости от длительности нажатия или прочих критериев, генерирует события, которые выполняются последовательно

alexkirsanov850@gmail.com 14.10.2018 22:10

j0hnik,
Попробуйте решить задачу:

При скроллинге страницы с целью акцентирования внимания на определенных блоках остановить прокрутку страницы.

Эта задача должна просто решаться у меня не хватает знаний и понимания именно языка.


Часовой пояс GMT +3, время: 11:12.