create a holding page for a webpage for a 10 year old girl that creates earrings, bracelets and all sorts of cool small stuff herself, she has made an image of herself in the style of claymation where she is standing in the middle with a pencil she has written "Kenza's skatter" on the wall behind her and taped a few of her makings on tha wall. the background of this picture is blue. This will be a holding page as in "comming soon" not a full site.
6b8dc36
verified
| // Shared JavaScript across all pages | |
| // Countdown timer for launch date | |
| function updateCountdown() { | |
| const launchDate = new Date('2024-03-01T00:00:00').getTime(); | |
| const now = new Date().getTime(); | |
| const distance = launchDate - now; | |
| if (distance < 0) { | |
| document.getElementById('countdown').innerHTML = '<div class="text-2xl font-bold text-primary-600">We\'re Live! 🎉</div>'; | |
| return; | |
| } | |
| const days = Math.floor(distance / (1000 * 60 * 60 * 24)); | |
| const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); | |
| const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); | |
| const seconds = Math.floor((distance % (1000 * 60)) / 1000); | |
| document.getElementById('days').textContent = days.toString().padStart(2, '0'); | |
| document.getElementById('hours').textContent = hours.toString().padStart(2, '0'); | |
| document.getElementById('minutes').textContent = minutes.toString().padStart(2, '0'); | |
| document.getElementById('seconds').textContent = seconds.toString().padStart(2, '0'); | |
| } | |
| // Initialize countdown | |
| updateCountdown(); | |
| setInterval(updateCountdown, 1000); | |
| // Add floating animation to random elements | |
| document.addEventListener('DOMContentLoaded', function() { | |
| const floatElements = document.querySelectorAll('.transform'); | |
| floatElements.forEach((element, index) => { | |
| element.style.animationDelay = `${index * 0.2}s`; | |
| }); | |
| }); | |
| // Add sparkle effect to headings | |
| function addSparkleEffect() { | |
| const headings = document.querySelectorAll('h1, h2'); | |
| headings.forEach(heading => { | |
| heading.classList.add('sparkle-animation'); | |
| }); | |
| } | |
| // Initialize sparkle effect | |
| addSparkleEffect(); | |
| // Smooth scroll to elements | |
| function smoothScrollTo(element) { | |
| element.scrollIntoView({ | |
| behavior: 'smooth', | |
| block: 'start' | |
| }); | |
| } | |
| // Add interactive hover effects | |
| document.addEventListener('DOMContentLoaded', function() { | |
| const craftItems = document.querySelectorAll('.bg-white\\/80'); | |
| craftItems.forEach(item => { | |
| item.addEventListener('mouseenter', function() { | |
| this.style.transform = 'scale(1.05) rotate(2deg)'; | |
| this.style.transition = 'all 0.3s ease'; | |
| }); | |
| item.addEventListener('mouseleave', function() { | |
| this.style.transform = 'scale(1) rotate(0deg)'; | |
| }); | |
| }); | |
| }); | |
| // Handle responsive adjustments | |
| function handleResize() { | |
| const vantaElement = document.getElementById('vanta-background'); | |
| if (window.innerWidth < 768 && vantaElement) { | |
| vantaElement.style.display = 'none'; | |
| } else if (vantaElement) { | |
| vantaElement.style.display = 'block'; | |
| } | |
| } | |
| // Initialize resize handler | |
| window.addEventListener('resize', handleResize); | |
| handleResize(); // Call initially | |
| console.log('Kenza\'s Skatter - Coming Soon Page Loaded! 🎨'); |