Files
citrus/resources/views/templates/neler-yapariz-gsap/js/flip.js
T

30 lines
849 B
JavaScript

// https://codepen.io/GreenSock/pen/RwLepdQ?editors=1010
addEventListener("GSAPReady", (event) => {
const wrapper = document.querySelector("[data-animate='flip']");
const toggles = [...wrapper.querySelector("[data-flip='toggle']").children];
const items = wrapper.querySelector("[data-flip='item']");
// console.log("flip", wrapper, toggles, items);
const flipGridList = () => {
const state = Flip.getState(items.children);
items.classList.toggle("list");
Flip.from(state, {
duration: 0.8,
ease: "expo.out",
onComplete: () => {
ScrollTrigger.refresh();
}
});
};
toggles.forEach((toggle, index) => {
toggle.addEventListener("click", () => {
toggles[0].classList.toggle("current");
toggles[1].classList.toggle("current");
flipGridList();
});
});
});