Tema
/
Interneto svetainių kliento dalies kūrimas JS
📖 Teorija

Namų darbas — tavo galerija

Namų darbas — tavo galerija.

  1. Pastatyk galeriją. index.html pridėk <div id="gallery" class="grid">. Sukurk js/views/gallery.js su renderGallery(pictures) (DocumentFragment). main.js, pavykus įkelti, kviesk renderGallery(pictures).
  2. Įrodyk fragmento naudą. Laikinai perrašyk be fragmento (pictures.forEach(pic => gallery.appendChild(createCard(pic)))). Su ~30 kortelių skirtumo nepamatysi, bet supranti principą; grąžink fragmentą.
  3. Įjunk pasirodymą. Sukurk js/observers.js ir renderGallery gale kviesk revealOnScroll([...]). Slinkdamas stebėk „išnyrimą".
  4. Atkurk „amžino stebėjimo" spąstą. Užkomentuok observer.unobserve(...). Atidaryk „Performance"/„Console" ir stebėk, kaip observeris kviečiamas be perstojo. Grąžink unobserve.

Privalomi testai:

  • Tinklelio testas: galerija rodo visų nuotraukų korteles.
  • Pasirodymo testas: kortelės „išnyra" slenkant; su prefers-reduced-motion — pasirodo iškart.

Atsiskaitymui: ekrano nuotraukos arba video: (1) galerijos tinklelis, (2) „išnyrimo" efektas slenkant.

Toliau. Galerija veikia — kai viskas gerai. Bet tinklas realybėje klysta: būna kraunama, tuščia, klaida. 6 pamokoje sutvarkysim visas būsenas — ir tą dieną, kai APOD grąžina vaizdo įrašą, ne nuotrauką.