@a16a

Как запустить js скрипт на определенном месте?

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

$('.count').each(function () {
    $(this).prop('Counter',0).animate({
        Counter: $(this).text()
    }, {
        duration: 5555,
        easing: 'swing',
        step: function (now) {
            $(this).text(Math.ceil(now));
        }
    });
});
  • Вопрос задан
  • 719 просмотров
Пригласить эксперта
Ответы на вопрос 1
rework
@rework
Помог ответ? В благодарность отметь его решением
Поместите код в функцию и вызывайте её по событию скролла, когда он дойдёт до нужного вам элемента:

function start_count() {
    $('.count').each(function () {
        $(this).prop('Counter',0).animate({
            Counter: $(this).text()
        }, {
            duration: 5555,
            easing: 'swing',
            step: function (now) {
                $(this).text(Math.ceil(now));
            }
        });
    });
}

$(function() {
    var oTop = $('.count').offset().top - window.innerHeight;
    $(window).scroll(function(){
        var pTop = $('body').scrollTop();
        if( pTop > oTop ){
            start_count();
        }
    });
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы