From ae9691c78a6de4adee9be2a562a09411a4e92b4a Mon Sep 17 00:00:00 2001 From: chark1es Date: Mon, 6 Jan 2025 17:56:17 -0800 Subject: [PATCH] fixed in-view --- src/components/core/InView.astro | 34 ++++++++++++++------------ src/components/main_page/Divider.astro | 26 +++++++++++--------- tailwind.config.mjs | 8 +++++- 3 files changed, 40 insertions(+), 28 deletions(-) diff --git a/src/components/core/InView.astro b/src/components/core/InView.astro index 6d9e17e..447bf4d 100644 --- a/src/components/core/InView.astro +++ b/src/components/core/InView.astro @@ -1,16 +1,20 @@ - \ No newline at end of file + const observer = new IntersectionObserver( + (entries) => { + entries.forEach((entry) => { + if (entry.isIntersecting) { + entry.target.classList.add("in-view"); + console.log("Added 'in-view' class to:", entry.target); + } else { + entry.target.classList.remove("in-view"); + console.log("Removed 'in-view' class from:", entry.target); + } + }); + }, + { threshold: 0.2 } + ); + + document + .querySelectorAll("[data-inview]") + .forEach((el) => observer.observe(el)); + diff --git a/src/components/main_page/Divider.astro b/src/components/main_page/Divider.astro index e982917..9f214be 100644 --- a/src/components/main_page/Divider.astro +++ b/src/components/main_page/Divider.astro @@ -1,20 +1,22 @@ --- -import InView from "../../components/core/InView.astro" +import InView from "../../components/core/InView.astro"; --- - + +
-
-

+ +

+

02

-

- Amet Consectetur -

- +

Amet Consectetur

-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim + +

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod + tempor incididunt ut labore et dolore magna aliqua. Ut enim

-
+
diff --git a/tailwind.config.mjs b/tailwind.config.mjs index 924bb36..5d95d58 100644 --- a/tailwind.config.mjs +++ b/tailwind.config.mjs @@ -24,5 +24,11 @@ export default { }, }, }, - plugins: [require("tailwindcss-motion"), require("tailwindcss-animated")], + plugins: [ + require("tailwindcss-motion"), + require("tailwindcss-animated"), + function ({ addVariant }) { + addVariant("in-view", "&.in-view"); + }, + ], };