项目作者: alena-senkiv

项目描述 :
Home work JavaScript 8
高级语言: JavaScript
项目地址: git://github.com/alena-senkiv/goit-js-hw-08-gallery.git
创建时间: 2020-10-05T20:32:17Z
项目社区:https://github.com/alena-senkiv/goit-js-hw-08-gallery

开源协议:

下载


goit-js-hw-08

Home work JavaScript 8

Критерии приема

  • Создан репозиторий goit-js-hw-08-gallery.
  • При сдаче домашней работы есть две ссылки: на исходные файлы и рабочую
    страницу на GitHub pages.
  • При посещении рабочей страницы (GitHub pages) задания, в консоли нету ошибок и
    предупреждений.
  • Имена переменных и функций понятные, описательные.
  • Код отформатирован с помощью Prettier.

Задание

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

Превью

Разбей задание на несколько подзадач:

  • Создание и рендер разметки по массиву данных и предоставленному шаблону.
  • Реализация делегирования на галерее ul.js-gallery и получение url большого
    изображения.
  • Открытие модального окна по клику на элементе галереи.
  • Подмена значения атрибута src элемента img.lightbox__image.
  • Закрытие модального окна по клику на кнопку
    button[data-action="close-lightbox"].
  • Очистка значения атрибута src элемента img.lightbox__image. Это необходимо
    для того, чтобы при следующем открытии модального окна, пока грузится
    изображение, мы не видели предыдущее.

Стартовые файлы

  • В папке src ты найдешь стартовые файлы проекта с базовой разметкой и
    готовыми стилями.
  • В файле gallery-items.js есть массив объектов
    содержащих информацию о изображениях: маленькое изображение, оригинальное и
    описание.

Разметка элемента галереи

Ссылка на оригинальное изображение должна храниться в data-атрибуте source на
элементе img, и указываться в href ссылки (это необходимо для доступности).

  1. <li class="gallery__item">
  2. <a
  3. class="gallery__link"
  4. href="https://cdn.pixabay.com/photo/2010/12/13/10/13/tulips-2546_1280.jpg"
  5. >
  6. <img
  7. class="gallery__image"
  8. src="https://cdn.pixabay.com/photo/2010/12/13/10/13/tulips-2546__340.jpg"
  9. data-source="https://cdn.pixabay.com/photo/2010/12/13/10/13/tulips-2546_1280.jpg"
  10. alt="Tulips"
  11. />
  12. </a>
  13. </li>

Дополнительно

Следующий функционал не обязателен при сдаче задания, но будет хорошей практикой
по работе с событиями.

  • Закрытие модального окна по клику на div.lightbox__overlay.
  • Закрытие модального окна по нажатию клавиши ESC.
  • Пролистывание изображений галереи в открытом модальном окне клавишами “влево”
    и “вправо”.