mirror of
https://github.com/openvk/openvk
synced 2024-12-23 00:51:03 +03:00
Web: fix that annoying bug with scrolling
This commit is contained in:
parent
050afab816
commit
453b002451
1 changed files with 11 additions and 3 deletions
|
@ -1,6 +1,10 @@
|
||||||
const contentPage = document.querySelector(".page_content");
|
const contentPage = document.querySelector(".page_content");
|
||||||
const rootElement = document.documentElement;
|
const rootElement = document.documentElement;
|
||||||
|
|
||||||
|
// охуенное название файла, КТО ЭТО ПРИДУМАЛ КРАСАВА Я ИЗ КОМНАТЫ С ЭТОГО УЛЕТЕЛ НАХУЙ
|
||||||
|
|
||||||
|
let scrolledAndHidden = false;
|
||||||
|
|
||||||
let smallBlockObserver = new IntersectionObserver(entries => {
|
let smallBlockObserver = new IntersectionObserver(entries => {
|
||||||
entries.forEach(x => {
|
entries.forEach(x => {
|
||||||
window.requestAnimationFrame(() => {
|
window.requestAnimationFrame(() => {
|
||||||
|
@ -10,10 +14,14 @@ let smallBlockObserver = new IntersectionObserver(entries => {
|
||||||
else
|
else
|
||||||
contentPage.classList.add("overscrolled");
|
contentPage.classList.add("overscrolled");
|
||||||
|
|
||||||
let currentHeight = contentPage.getBoundingClientRect().height;
|
// let currentHeight = contentPage.getBoundingClientRect().height;
|
||||||
let ratio = currentHeight / pastHeight;
|
// let ratio = currentHeight / pastHeight;
|
||||||
|
|
||||||
rootElement.scrollTop *= ratio;
|
// rootElement.scrollTop *= ratio;
|
||||||
|
|
||||||
|
// То что я задокументировал - работает мегакриво.
|
||||||
|
// Пусть юзер и проскролливает какую-то часть контента, зато не получит
|
||||||
|
// эпилепсии при использовании :)
|
||||||
}, contentPage);
|
}, contentPage);
|
||||||
});
|
});
|
||||||
}, {
|
}, {
|
||||||
|
|
Loading…
Reference in a new issue