прокрутить событие по количеству?

В настоящее время я использую что-то подобное, чтобы делать что-то готовое и событие прокрутки. Но мне действительно нужно делать что-то только каждый раз, когда страница прокручивается на полную длину (высота окна), а не перезапускать ее для каждой маленькой прокрутки. Есть ли способ сделать это с помощью jQuery или собственного JavaScript?

$(document).ready(function() {
    $(window).scroll(function() {
        // do stuff
    }).scroll(); // Trigger scroll handlers.
});

person ryanve    schedule 15.01.2012    source источник


Ответы (2)


Вы не можете запустить событие, не прослушивая его, но вы можете использовать jQuery scrollTop(), чтобы увидеть, прокручивается ли страница на ту же величину, что и высота окна, но это нужно будет проверить на определенное событие, например событие прокрутки, что-то вроде этого:

$(window).on('scroll', function() {
    if ($(this).scrollTop() > $(window).height()) {
        alert("scrolled more than window height");
    }
});
person adeneo    schedule 15.01.2012

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

person Mottie    schedule 15.01.2012
comment
Интересно. . . собираюсь попробовать разоблачение. Спасибо. - person ryanve; 16.01.2012