Отложенная загрузка изображений Lazy Load на сайте

Поделиться
HTML-код
  • Опубликовано: 16 ноя 2024

Комментарии • 74

  • @wdm
    @wdm  5 месяцев назад +1

    💥 Все курсы в одном комплекте 👇👇👇
    webdesign-master.ru/bundle_courses

  • @wdm
    @wdm  5 лет назад +28

    UPD: Тип плейсхолдера (Dummy Image Generator) был изменён с PNG на GIF для лучшего сжатия.
    UPD 2: Расчёт CSS Hack был добавлен в Lazy Load Placeholder Generator.
    UPD 3: Обязательно проверяйте, корректно ли настроена отложенная загрузка на вашем сайте. Я делаю это с помощью инструмента puppeteer-examples, который рекомендует Google как раз для этих целей.
    Установить puppeteer-examples довольно просто.
    1. Клонируйте puppeteer-examples в любой каталог:
    git clone github.com/GoogleChromeLabs/puppeteer-examples
    2. Перейдите в каталог и установите модули:
    cd puppeteer-examples; npm i
    Вместе с модулями будет установлен довольно тяжеловесный движок Chromium, так что установка может занять время.
    3. Проверьте интересующую страницу:
    node lazyimages_without_scroll_events.js -h -u yousite.ru
    Отчёт и рендер будет загружен в папку puppeteer-examples.
    Я рекомендую использовать CSS Hack для формовки изображений, если не используется отложенная загрузка, а Lazy Load применять с осторожностью и всегда проверять, как работает данный приём с помощью puppeteer-examples.
    Если на скриншотах представлен весь контент, который должен быть виден посетителям и индексироваться поисковыми роботами, значит все в порядке (цитата Google).

    • @vwusr2533
      @vwusr2533 5 лет назад

      Рассмотренный способ не позволяет делать lazy load для background'ов?

    • @andrandr7771
      @andrandr7771 5 лет назад +4

      @@vwusr2533

  • @volodymyrhetsko5962
    @volodymyrhetsko5962 5 лет назад +5

    Вижу новые твои видео, сразу лайкаю, потом смотрю. Спасибо за работу.

  • @SheenisSheen
    @SheenisSheen 5 лет назад +3

    Осталось, сделать ленивую загрузку ещё ленивей при самом процессе верстки, пора делать плагин для vsc, что бы во время разметки писал imgsrc/1.png и жмакал tab вставлялся уже тег со всем прописаным и сделанным :D

  • @tonit2237
    @tonit2237 5 лет назад +4

    Как всегда годно и полезно) Алексей, большое спасибо. Скорее уже следующий видос)

  • @ilnurtak9276
    @ilnurtak9276 5 лет назад +4

    Огонь! Огонь! Огонь! Гугл оптимизацию в массы! =)

  • @TymurYunusov
    @TymurYunusov 5 лет назад +3

    Огромное спасибо! Как всегда круто, лучший канал по веб-разработке! Очень жду видео про google page speed и Optimized HTML 5

  • @michael_ya_
    @michael_ya_ 5 лет назад +5

    Отличный урок, большое спасибо за Вашу работу)

  • @ИльясФаизов
    @ИльясФаизов 5 лет назад +1

    Как ты меня выручил, мне как раз это нужно было

  • @ВікторМачальський
    @ВікторМачальський 5 лет назад +4

    Круто! Подписался) Больше бы таких видео

  • @kuzmult
    @kuzmult 5 лет назад +1

    Вот это видео, только вчера интересовался этим!

  • @excelente9842
    @excelente9842 5 лет назад +3

    Подача информации супер)Спасибо!

  • @aleksandrkokin6065
    @aleksandrkokin6065 5 лет назад +1

    Спасибо за полезный урок

  • @Eduard0213-x7p
    @Eduard0213-x7p 4 года назад +1

    net slow klass prosto !!!

  • @VideoShare-j4q
    @VideoShare-j4q 5 лет назад +1

    Как всегда круто!

  • @TyrboCreed
    @TyrboCreed 5 лет назад +12

    Ахах, как раз сейчас поставлена задача по оптимизации загрузки сайта) Спасибо за оперативное видео)

  • @Сергей-ь3ы1г
    @Сергей-ь3ы1г 5 лет назад +1

    Как всегда Респект!!! Побольше уроков!

  • @ДимаПанасенко-ч8р
    @ДимаПанасенко-ч8р 5 лет назад +3

    не ну это однозначно лайк господа

  • @vwusr2533
    @vwusr2533 5 лет назад +1

    Спасибо, как раз актуально )

  • @VolodymyrTymkiv
    @VolodymyrTymkiv 5 лет назад +1

    Ля как красиво получилось. Чмавки-лавки

  • @serghiokomolov2339
    @serghiokomolov2339 5 лет назад +2

    Полезно. спасибо!

  • @valdog2593
    @valdog2593 5 лет назад +1

    Однозначно лайк!)))

  • @Александр-ы3ф9л
    @Александр-ы3ф9л 5 лет назад

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

  • @AleksandrS0109
    @AleksandrS0109 5 лет назад +1

    Сразу лайк))

  • @foxsayjs
    @foxsayjs 3 года назад

    Cool!

  • @НинаГорбань-ф2ю
    @НинаГорбань-ф2ю 5 лет назад +1

    Спасибо

  • @dmitriykurtsev2427
    @dmitriykurtsev2427 4 года назад +1

    Что за шрифты стоят у тебя на винде?

  • @Bruce-Lee.
    @Bruce-Lee. 5 лет назад

    Лайк.

  • @Скыбыдыщь
    @Скыбыдыщь 5 лет назад

    Thanks

  • @НазарЛойко-х5л
    @НазарЛойко-х5л 3 года назад

    Хотел спросить, вот на мобильной версии мы все равно будем уменьшать картинки, а Вы говорите что нужно юзать его когда картинка будет занимать свой размер. Стоит ли использовать тогда lazy-load?
    Например когда картинка резиновая, эта пиксельная заглушка под неё будет такой же?

  • @baktohelp
    @baktohelp 5 лет назад +1

    Верстка 8 части джедаи верстки будет? Очень жду так как много вопросов.

    • @wdm
      @wdm  Год назад

      Да, джедай верстки 8 уже вышел, там много интересного: ruclips.net/video/3PzzZ5eHHig/видео.html

  • @xray9114
    @xray9114 5 лет назад

    Спасибо за видео))) А что если написать какой-то скрипт, чтобы считал разрешение или через Sass выражения. Если такое возможно конечно)) Или попробовать прикрутить SVG)
    Поздравляю с Ребрендингом!🙂👍 Всегда жду новый контент, и лайкаю со всех аккаунтов))) Желаю успехов!!!

  • @АдлетМуратов-о9ш
    @АдлетМуратов-о9ш 5 лет назад +1

    Привествую! А как подключить lazyload для тега div c background-imgae, а также где высота равна 100% ??

  • @Скыбыдыщь
    @Скыбыдыщь 5 лет назад +1

    I love you

  • @kirik55
    @kirik55 5 лет назад +1

    Здравствуйте. Вопрос не по теме (если не трудно): "Какой программкой делаете вывод названия нажатых клавиш на экран?"

  • @yuliasereda5671
    @yuliasereda5671 3 года назад

    подскажите плиз, динамическую погрузку с бэкенда возможно настроить с помощью lozad?

  • @upawesome7340
    @upawesome7340 5 лет назад +1

    Слышал про такую проблему что роботы поисковые когда парсят страницу не видят эти изображения, тоесть при использовании Lazy Load, SEO по картинкам становится не возможным. Хотел-бы услышать мнения по этому поводу.

    • @wdm
      @wdm  5 лет назад +1

      Не верю слухам. Верю пруфам. Всё работает.
      www.google.ru/search?tbm=isch&q=site:webdesign-master.ru
      yandex.ru/images/search?text=site:webdesign-master.ru

  • @АндрейСпичак-ь4б
    @АндрейСпичак-ь4б 3 года назад

    Алексей, а как отложить загрузку изображений, которые прописаны не в html, а в css, например, на ::after или ::before?

  • @viktorgolovlev1709
    @viktorgolovlev1709 5 лет назад +1

    Вопрос: почему вместо подстановки tumb нельзя объявить display: block; и задать высоту?

    • @wdm
      @wdm  5 лет назад +1

      В адаптивной верстке изображения не имеют фиксированной высоты. К тому-же, img без src невалидны.

  • @maksp.5366
    @maksp.5366 5 лет назад

    Круто! Спс. Мало инфы по этой тебе. Я изучаю PSpeed давно по немногу. Нашел костыль на JS, допилил его но такого эффекта не добился(хотя 99-100 выдал GPSpeed). Но этот плагин* огонь ) Спс

  • @lamax8806
    @lamax8806 5 лет назад +1

    Супер))

  • @Виталий-е9д5е
    @Виталий-е9д5е 5 лет назад

    Алексей, огромное спасибо! Очень нужная вещь! Вопрос не в тему: сильно тормозит загрузку сайта счетчик Яндекс Метрики... Ты может думал над этим? Может есть способ отложить (ускорить) загрузку счетчика... или еще как?

    • @wdm
      @wdm  5 лет назад +1

      Привет. Не сталкивался с проблемой. У меня не сильно тормозят загрузку. Отъедает 1-2% в Google PageSpeed. Это не критично.

    • @Виталий-е9д5е
      @Виталий-е9д5е 5 лет назад

      @@wdm ... блин, у меня пунктов 10 так точно...

    • @wdm
      @wdm  5 лет назад +1

      Думаю, это не из-за этого. PageSpeed рассчитывает показатель из реального использования с недавнего времени. Если у вас свежий сайт, он делает примерные замеры. Не стоит на эти мелочи обращать внимание. Просто оптимизируйте максимально возможно.

    • @Виталий-е9д5е
      @Виталий-е9д5е 5 лет назад

      @@wdm Спасибо!

  • @StarkElessar
    @StarkElessar 3 года назад

    Как быть если оригинальное изображение у меня прописано в css стилях как фоновое, как его лениво подгрузить?

  • @Виталий-е9д5е
    @Виталий-е9д5е 5 лет назад

    Алексей спасибо еще раз за уроки! Круто! Один вопрос... Все реализовал по твоему гайду у себя на сайте... Все хорошо... Для изображений... Но у меня есть еще блок с видео отзывами... Реализованы (по желанию клиента) с помощью тега video (т.е. не ссылка на ютуб)... С добавлением видео скорость загрузки сайта сразу рухнула... Вопрос, что нужно сделать (добавить), чтобы работала также ленивая загрузка видео...?

    • @wdm
      @wdm  5 лет назад +1

      Здравствуйте. Спасибо. О загрузке фреймов и виджетов готовится видео.

  • @sergiiche
    @sergiiche 5 лет назад

    Привет! Поможет ли это в работе lazyload с masonry? Когда включаю в nginx pagespeed lazyload filter - masonry срабатывает раньше загрузки изображений, ну и как следствие получаем большие отступы между некоторыми плитками, т.к. изображения разные по высоте. Спасибо!

  • @TurchynykOleksii
    @TurchynykOleksii 5 лет назад

    какой lazy load используеться в вашем последнем оптимайзе?? дайте ссылочку пожалуйста

  • @capy7773
    @capy7773 5 лет назад

    Это получается, что для сайта с большим количеством картинок сидит верстальщик и генерирует код для каждой картинки? А как в соц сетях это реализовано?

    • @wdm
      @wdm  5 лет назад

      Darth Revan я генерирую один раз, если использую dummy images. Для неопределенных и заранее неизвестных изображений достаточно 1x1 изображение. Форма теряется, но это единственный возможный способ. По соцсетям - Посмотрите, у браузеров есть DevTools. Принцип везде одинаков, разница в триггерах загрузки. Сейчас становится популярным метод Intersection Observer. Однако, я специально не акцентировал внимание на конкретном триггере или плагине, тк их довольно много и нельзя сказать, что какой-то из них плох.

  • @АнтонАнтонов-р3к3м

    В примере data-src прописан руками, а как быть если контент размещает например контент менеджер просто из админки, а нужно чтобы этот контент тоже лениво грузился и такой момент, контент менеджер не знает html. Идеи и решения есть, но интересно именно вас послушать, как вы бы поступили в этой ситуации?

    • @wdm
      @wdm  5 лет назад +1

      Антон Антонов изменил бы темплейт вывода.

  • @vasiliy_konnov
    @vasiliy_konnov 5 лет назад

    Как работать с тегом pictures в нем мы несколько вариантов изображений можем перечислить для ретины, для мобильных и прочее и как тогда быть с ними?

    • @wdm
      @wdm  5 лет назад +1

      Как работать с тегом picture? Всё очень просто и гуглится на РАЗ: www.w3schools.com/tags/tag_picture.asp

    • @vasiliy_konnov
      @vasiliy_konnov 5 лет назад

      @@wdm я о том как работать с этим тегом во всей его мощи + lazy load ?

    • @wdm
      @wdm  5 лет назад +1

      Василий Коннов да, в общем-то также. Есть src, есть srcset. Разница невелика изменён только селектор и появилась вложенность. Но вот что самое главное - есть доступная и понятная документация на русском.

  • @СветланаП-е9к
    @СветланаП-е9к 5 лет назад

    Не совсем понятно откуда в демо берутся классы loading и loaded? Я скопировала пример, но классы не добавляются, и, видимо из-за этого все картинки загружаются сразу, а не по мере прокрутки страницы.

    • @wdm
      @wdm  5 лет назад +1

      Эти классы раздаёт плагин Lazy Load. Для работы нужен сервер, не достаточно просто открыть index.html в браузере.

  • @selicon
    @selicon 5 лет назад

    Жаль, что заглушки постепенно не меняются на изображение по мере загрузки оригинала, а ждут полностью и только затем меняются

    • @wdm
      @wdm  5 лет назад +1

      Дмитрий Мякишев можно сделать плавный fade-in или использовать прогрессивный jpeg.

  • @МаратЗаитов-х1ю
    @МаратЗаитов-х1ю 5 лет назад

    Инетересно как ты реализовал этот генератор

    • @maxengio
      @maxengio 5 лет назад

      Тоже задумался

  • @VANLAVPRO
    @VANLAVPRO 5 лет назад

    добрый день. напишите пожалуйста свою почту, есть коммерческое предложение к Вам.