2025-10-13 09:42:24 +00:00

40 lines
1.5 KiB
JavaScript

document.addEventListener('DOMContentLoaded', function () {
// 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 submission
const contactForm = document.getElementById('contactForm');
if (contactForm) {
contactForm.addEventListener('submit', function (e) {
e.preventDefault();
const form = e.target;
const formData = new FormData(form);
const formMessages = document.getElementById('form-messages');
fetch(form.action, {
method: 'POST',
body: formData
})
.then(response => response.text().then(text => ({ status: response.status, text })))
.then(({ status, text }) => {
if (status === 200) {
formMessages.innerHTML = '<div class="alert alert-success">' + text + '</div>';
form.reset();
} else {
formMessages.innerHTML = '<div class="alert alert-danger">' + text + '</div>';
}
}).catch(() => {
formMessages.innerHTML = '<div class="alert alert-danger">Oops! An error occurred.</div>';
});
});
}
});