...
window.addEventListener("load", initCursor);
function initCursor() {
const $img = document.querySelector("#site-header");
const { $width } = $img.getBoundingClientRect();
const $halfImgWidth = $width / 2;
$img.addEventListener("mousemove", function (e) {
const xPos = e.pageX - $img.offsetLeft;
/*IE11 need this*/
//this.classList.remove("cursor-prev");
//this.classList.remove("cursor-next");
this.classList.remove("cursor-prev", "cursor-next");
if (xPos > $halfImgWidth) {
this.classList.add("cursor-next");
} else {
this.classList.add("cursor-prev");
}
});
}
// Cursor ICON substitition <--
// Button Ripple Effect
// Function to add the ripple effect
function addRippleEffect(event) {
const button = event.currentTarget;
const ripple = document.createElement("span");
const rect = button.getBoundingClientRect();
const size = Math.max(rect.width, rect.height);
const x = event.clientX - rect.left - size / 2;
const y = event.clientY - rect.top - size / 2;
ripple.style.width = ripple.style.height = `${size}px`;
ripple.style.left = `${x}px`;
ripple.style.top = `${y}px`;
ripple.classList.add("ripple");
button.appendChild(ripple);
ripple.addEventListener("animationend", function() {
ripple.remove();
});
}
// Function to attach the ripple effect to buttons with given class names
function attachRippleEffectToButtons(classNames) {
classNames.forEach(className => {
const buttons = document.querySelectorAll(`.${className}`);
if (buttons.length === 0) {
console.warn(`No elements found for class ${className}`);
return;
}
buttons.forEach(button => {
button.addEventListener("click", addRippleEffect);
});
});
}
// Attach the ripple effect when the document is ready
document.addEventListener("DOMContentLoaded", function() {
const targetClassNames = ["btn-mat", "another-class"];
attachRippleEffectToButtons(targetClassNames);
function createCircleInner() {
const circleInner = document.createElement('div');
circleInner.className = 'circle-inner';
const box = document.createElement('div');
box.className = 'box';
circleInner.appendChild(box);
const smallCircle = document.createElement('div');
smallCircle.className = 'small-circle';
box.appendChild(smallCircle);
for (let i = 1; i <= 10; i++) {
const span = document.createElement('span');
span.style.setProperty('--i', i);
box.appendChild(span);
}
document.body.appendChild(circleInner);
}
createCircleInner();
});
window.onbeforeunload = function leavingPage(){
console.log('leaving');
return null;
}
-->