homegrade_theme_production/resources/js/scrollerTop.js

27 lines
720 B
JavaScript

function handleScrollButonDisplay() {
const scrollerTop = document.querySelector('#scroller-top');
if (
document.body.scrollTop > window.innerHeight / 2 ||
document.documentElement.scrollTop > window.innerHeight / 2
) {
scrollerTop.removeAttribute('aria-hidden');
} else {
scrollerTop.setAttribute('aria-hidden', 'true');
}
}
function scrollTop() {
window.scrollTo({
top: 0,
behavior: 'smooth',
});
}
export default function scrollerTopInit() {
const scrollerTop = document.querySelector('#scroller-top');
if (!scrollerTop) return;
window.addEventListener('scroll', handleScrollButonDisplay);
scrollerTop.addEventListener('click', scrollTop);
}