emmas.place/script/image-enlarger.js

42 lines
1.3 KiB
JavaScript

const enlargeImg = document.querySelectorAll(".enlarge");
const body = document.querySelector("body");
const main = document.querySelector("main");
const nav = document.querySelector("nav");
const header = document.querySelector("header");
// script tag needs defer attribute as footer is included by php
// after script tag. defer makes sure the script is loaded after
// everything else on the page has loaded
const footer = document.querySelector("footer");
enlargeImg.forEach((img) => {
img.style.cursor = "pointer";
img.addEventListener("click", () => {
// make background for image
let div = document.createElement("div");
div.style.height = "100vh";
div.style.width = "auto";
div.style.backgroundColor = "#000000";
// hide current page contents
main.style.display = "none";
nav.style.display = "none";
footer.style.display = "none";
header.style.display = "none";
// remove display: grid from body and append div with enlarged image
body.style.display = "block";
body.append(div);
div.addEventListener("click", () => {
// remove div and restore elements contained in body
// to their original display properties
div.remove();
body.style.display = "grid";
main.style.display = "block";
nav.style.display = "block";
header.style.display = "flex";
footer.style.display = "flex";
});
});
});