Cleo | 00ccf36 | 2024-02-29 15:07:31 -0500 | [diff] [blame^] | 1 | function changeContainerColor(color) { |
| 2 | const container = document.querySelector(".container"); |
| 3 | container.style.backgroundColor = color; |
| 4 | } |
| 5 | |
| 6 | const blahajOverlay = document.querySelector(".blahaj-overlay"); |
| 7 | const boatOverlay = document.querySelector(".boat-overlay"); |
| 8 | const cloudLeftOverlay = document.querySelector(".cloud-left-overlay"); |
| 9 | const cloudRightOverlay = document.querySelector(".cloud-right-overlay"); |
| 10 | const lakeOverlay = document.querySelector(".lake-overlay"); |
| 11 | const mountainsOverlay = document.querySelector(".mountains-overlay"); |
| 12 | |
| 13 | const bushLeftOverlay = document.querySelector(".bush-left-overlay"); |
| 14 | const bushRightOverlay = document.querySelector(".bush-right-overlay"); |
| 15 | const canvasOverlay = document.querySelector(".canvas-overlay"); |
| 16 | |
| 17 | blahajOverlay.style.transition = "transform 2s ease-out"; |
| 18 | boatOverlay.style.transition = "transform 2s ease-out"; |
| 19 | lakeOverlay.style.transition = "transform 2s ease-out"; |
| 20 | cloudLeftOverlay.style.transition = "transform 2s ease-out"; |
| 21 | cloudRightOverlay.style.transition = "transform 2s ease-out"; |
| 22 | bushLeftOverlay.style.transition = "transform 2s ease-out"; |
| 23 | bushRightOverlay.style.transition = "transform 2s ease-out"; |
| 24 | |
| 25 | canvasOverlay.style.transform = "scale(0.9)"; |
| 26 | |
| 27 | window.addEventListener("resize", () => { |
| 28 | canvasOverlay.style.transform = |
| 29 | "scale(" + scaleValue(window.innerWidth) + ")"; |
| 30 | }); |
| 31 | |
| 32 | function parallaxStart() { |
| 33 | blahajOverlay.style.transform = "scale(1.01)"; |
| 34 | boatOverlay.style.transform = "scale(1.01)"; |
| 35 | lakeOverlay.style.transform = "scale(1.003)"; |
| 36 | cloudLeftOverlay.style.transform = "translateX(-5px)"; |
| 37 | cloudRightOverlay.style.transform = "translateX(5px)"; |
| 38 | bushLeftOverlay.style.transform = "translateX(-100px)"; |
| 39 | bushRightOverlay.style.transform = "translateX(150px)"; |
| 40 | } |
| 41 | |
| 42 | function parallaxEnd() { |
| 43 | blahajOverlay.style.transform = "scale(1)"; |
| 44 | boatOverlay.style.transform = "scale(1)"; |
| 45 | lakeOverlay.style.transform = "scale(1)"; |
| 46 | cloudLeftOverlay.style.transform = "translateX(0px)"; |
| 47 | cloudRightOverlay.style.transform = "translateX(0px)"; |
| 48 | bushLeftOverlay.style.transform = "translateX(0px)"; |
| 49 | bushRightOverlay.style.transform = "translateX(0px)"; |
| 50 | } |
| 51 | |
| 52 | function scaleValue(windowWidth) { |
| 53 | const minWindowWidth = 500; // Minimum window.innerWidth value |
| 54 | const maxWindowWidth = 2000; // Maximum window.innerWidth value |
| 55 | const minValue = 0.8; // Minimum scaled value |
| 56 | const maxValue = 0.9; // Maximum scaled value |
| 57 | |
| 58 | // Scale the value based on the window.innerWidth |
| 59 | const scaledValue = |
| 60 | minValue + |
| 61 | ((windowWidth - minWindowWidth) / (maxWindowWidth - minWindowWidth)) * |
| 62 | (maxValue - minValue); |
| 63 | |
| 64 | // Return the scaled value (rounded to the nearest integer) |
| 65 | return scaledValue; |
| 66 | } |