From 8ed5241bb7bff3d94ae3bbe951d4ab1f1c99df7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robin=20L=C3=B6ffel?= Date: Sun, 10 Dec 2023 12:49:11 +0100 Subject: [PATCH] Updates --- index.js | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 index.js diff --git a/index.js b/index.js new file mode 100644 index 0000000..82d3af2 --- /dev/null +++ b/index.js @@ -0,0 +1,29 @@ +export default ({ className = "cosha", blur = "5px", brightness = 1, saturation = 1, x = 0, y = 0 } = {}) => { + const images = document.querySelectorAll(`.${className}`); + const styles = document.createElement("style"); + styles.textContent = ` + .${className}-wrapper { + position: relative; + display: grid; + place-content: center; + } + + .${className}-clone { + position: absolute; + z-index: -1; + translate: ${x} ${y} 0; + filter: blur(${blur}) brightness(${brightness}) saturate(${saturation}); + } + `; + document.body.append(styles); + for (const original of images) { + const cloned = original.cloneNode(true); + const wrapper = document.createElement("div"); + cloned.classList.remove(className); + cloned.classList.add(`${className}-clone`); + wrapper.classList.add(`${className}-wrapper`); + wrapper.append(original.cloneNode(true), cloned); + wrapper.querySelectorAll("img").item(1).alt = ""; + original.replaceWith(wrapper); + } +};