// Get the div element
const tiltDiv = document.getElementById('tilt-div');
// Add event listener for mousemove event
tiltDiv.addEventListener('mousemove', handleMouseMove);
// Reset transformation on mouse leave
tiltDiv.addEventListener('mouseleave', () => {
tiltDiv.style.transform = 'perspective(1000px) rotateX(0deg) rotateY(0deg)';
});
// Function to handle mousemove event
function handleMouseMove(event) {
const rect = tiltDiv.getBoundingClientRect();
const x = event.clientX - rect.left; // X position within the element
const y = event.clientY - rect.top; // Y position within the element
const tiltX = (rect.height / 2 - y) / 25; // Tilt calculation for X axis
const tiltY = (x - rect.width / 2) / 40; // Tilt calculation for Y axis
// Apply the transformation with perspective and rotate based on mouse position
tiltDiv.style.transform = `perspective(1000px) rotateX(${tiltX}deg) rotateY(${tiltY}deg)`;
}
#tilt-div {
transition: transform 250ms ease;
}