Анимированный gif, начинающийся с прокрутки

#jquery #css #animation #gif #animated-gif

#jquery #css #Анимация #gif #анимированный-gif

Вопрос:

Я создал 4 анимированных GIF-файла и хочу, чтобы они начинались с прокрутки пользователя.

Что я сделал, так это использовал это:

 $(function () {
    var screen = $(".screen");
    $(window).scroll(function () {
        var scroll = $(window).scrollTop();

        if (scroll >= 1500) {
            screen.css('display','block');
        } else {
            screen.css('display','none');
        }
    });
});
  

Я попытался отобразить none и заблокировать GIF-файлы с помощью прокрутки, и это работает хорошо, проблема в том, что gif не начинается с начала, когда я блокирую его, он начинается где-то в середине анимации.

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

Большое спасибо!

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

1. Вы не можете «перезапустить» gif, если не будете каждый раз повторно извлекать его с сервера (вы этого не хотите). Одним из решений было бы использовать data-uri и повторно применить src .

Ответ №1:

Ваш код скрывает и показывает изображения, но не перезагружает изображение. Вместо этого вы должны обновить свой атрибут src или просто изменить то же изображение.

 $(this).attr("src",$(this).attr("src"))

One simple solution would be 

if (scroll >= 1500) {
   screen.attr('src',screen.attr('src')); // update its src, this reloads the img
} else {
   screen.css('display','none');
}
  

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

1. Привет, спасибо! это сделало это, что я должен добавить к «else», чтобы он перестал обновляться после прокрутки 1500px?