Text bei Klick auf ein Bild ändern in HTML & Javascript?

1 Antwort

Ich würde die Beschreibungstexte initial via CSS verstecken. Bei Klick auf das jeweilige Bild wird der dazugehörige Text eingeblendet.

HTML:

<figure>
  <img alt="..." class="sdg-image" src="...">
  <figcaption class="sdg-description sdg-description--hidden">Text</figcaption>
</figure>

JavaScript:

const sdgImages = document.querySelectorAll(".sdg-image");

for (const sdgImage of sdgImages) {
  sdgImage.addEventListener("click", evt => {
    const box = evt.currentTarget.parentElement;
    const descriptionBox = box.querySelector(".sdg-description");

    if (descriptionBox) {
      descriptionBox.classList.remove("sdg-description--hidden");
    }
 });
}

CSS:

.sdg-description--hidden {
  display: none;
}