Lock body Scrolling and restore scroll position on unlock
Wed Mar 10 2021 10:26:07 GMT+0000 (Coordinated Universal Time)
Saved by
@klick
#javascript
function toggleScrollLock(open) {
var offset = window.scrollY;
var body = document.querySelector('body');
if (open) {
// Fix the body when menu is open
body.classList.add('fixed');
body.style.top = `-${offset}px`;
} else {
// Scroll back to original position upon close
const scrollY = document.body.style.top;
body.classList.remove('fixed');
body.style.top = '';
window.scrollTo(0, parseInt(scrollY || '0') * -1);
}
}
content_copyCOPY
Comments