Przeglądarka Zdjęć (JS + CSS + HTML)

sprawdzianik1.pages.dev

index.html

<!DOCTYPE html>
<html lang="pl">
<head>
  <meta charset="UTF-8">
  <title>Przeglądarka zdjęć</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>

  <div id="gora">
    <button onclick="pokaz(index - 1)">&lt;</button>
    <img id="duze" src="https://picsum.photos/id/1018/800/600" alt="Duże zdjęcie">
    <button onclick="pokaz(index + 1)">&gt;</button>
  </div>

  <hr>

  <div id="dol">
    <img class="mini aktywna" src="https://picsum.photos/id/1018/800/600" alt="1" onclick="pokaz(0)">
    <img class="mini" src="https://picsum.photos/id/1015/800/600" alt="2" onclick="pokaz(1)">
    <img class="mini" src="https://picsum.photos/id/1019/800/600" alt="3" onclick="pokaz(2)">
    <img class="mini" src="https://picsum.photos/id/1025/800/600" alt="4" onclick="pokaz(3)">
  </div>

  <script src="script.js"></script>
</body>
</html>

style.css

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: sans-serif;
  padding-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#gora {
  display: flex;
  align-items: center;
  gap: 20px;
}

#duze {
  width: 600px;
  height: 400px;
  object-fit: cover;
}

button {
  font-size: 30px;
  padding: 10px 15px;
  cursor: pointer;
}

hr {
  width: 100%;
  margin: 20px 0;
  border: 1px solid #ccc;
}

#dol {
  display: flex;
  gap: 15px;
}

#dol img {
  width: 120px;
  height: 80px;
  object-fit: cover;
  cursor: pointer;
}

.aktywna {
  outline: 3px solid blue;
}

script.js

var zdjecia = [
  'https://picsum.photos/id/1018/800/600',
  'https://picsum.photos/id/1015/800/600',
  'https://picsum.photos/id/1019/800/600',
  'https://picsum.photos/id/1025/800/600'
];

var index = 0;

function pokaz(i) {
  index = i;

  if (index < 0) index = zdjecia.length - 1;
  if (index >= zdjecia.length) index = 0;

  document.getElementById('duze').src = zdjecia[index];

  document.querySelector('.aktywna').classList.remove('aktywna');
  document.querySelectorAll('.mini')[index].classList.add('aktywna');
}

Gotowe odpowiedzi na pytania nauczyciela: