dynamicpricing-ai / script.js
ArgoMuk93's picture
I am trying to design an elegant but simple website for the AI consulting service that helps large retail companies determine dynamic pricing
43969da verified
// Smooth scrolling for anchor links
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function (e) {
e.preventDefault();
const target = document.querySelector(this.getAttribute('href'));
if (target) {
window.scrollTo({
top: target.offsetTop - 80,
behavior: 'smooth'
});
}
});
});
// Simple animation on scroll
const observerOptions = {
root: null,
rootMargin: '0px',
threshold: 0.1
};
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('animate-fade-in-up');
}
});
}, observerOptions);
document.querySelectorAll('.animate-on-scroll').forEach(el => {
observer.observe(el);
});
// Add animation classes to elements
document.addEventListener('DOMContentLoaded', function() {
// Add animation classes to feature cards
document.querySelectorAll('.grid > div').forEach((card, index) => {
card.classList.add('animate-on-scroll');
card.style.transitionDelay = `${index * 0.1}s`;
});
// Add animation to how-it-works steps
document.querySelectorAll('.flex .flex-shrink-0').forEach((step, index) => {
step.parentElement.classList.add('animate-on-scroll');
step.parentElement.style.transitionDelay = `${index * 0.2}s`;
});
});
// Animation CSS (added dynamically)
const style = document.createElement('style');
style.textContent = `
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.animate-fade-in-up {
animation: fadeInUp 0.6s ease-out forwards;
}
.animate-on-scroll {
opacity: 0;
}
`;
document.head.appendChild(style);