42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
|
|
document.addEventListener('DOMContentLoaded', function () {
|
|
// Navbar scroll effect
|
|
const navbar = document.querySelector('.navbar');
|
|
window.addEventListener('scroll', () => {
|
|
if (window.scrollY > 50) {
|
|
navbar.classList.add('scrolled');
|
|
} else {
|
|
navbar.classList.remove('scrolled');
|
|
}
|
|
});
|
|
|
|
// Smooth scrolling for anchor links
|
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
|
anchor.addEventListener('click', function (e) {
|
|
e.preventDefault();
|
|
document.querySelector(this.getAttribute('href')).scrollIntoView({
|
|
behavior: 'smooth'
|
|
});
|
|
});
|
|
});
|
|
|
|
// Contact form validation
|
|
const form = document.querySelector('.contact-form');
|
|
form.addEventListener('submit', function (e) {
|
|
e.preventDefault();
|
|
// Basic validation
|
|
const name = form.querySelector('#name').value;
|
|
const email = form.querySelector('#email').value;
|
|
const message = form.querySelector('#message').value;
|
|
|
|
if (name === '' || email === '' || message === '') {
|
|
alert('Please fill out all fields.');
|
|
return;
|
|
}
|
|
|
|
// On success
|
|
alert('Thank you for your message!');
|
|
form.reset();
|
|
});
|
|
});
|