Smooth markdown scrolling

This commit is contained in:
Matt Bierner
2017-01-24 22:22:51 -08:00
parent ccac9f3725
commit dbb77f1eef
3 changed files with 7 additions and 7 deletions

View File

@@ -65,10 +65,13 @@
if (isNaN(line)) {
continue;
}
const bounds = element.getBoundingClientRect();
const entry = { element, line };
if (offset >= window.scrollY + element.getBoundingClientRect().top && offset <= window.scrollY + element.getBoundingClientRect().top + element.getBoundingClientRect().height) {
if (offset >= window.scrollY + bounds.top && offset <= window.scrollY + bounds.top + bounds.height) {
// add progress through element
entry.line += (offset - (window.scrollY + bounds.top)) / (bounds.height);
return { previous: entry };
} else if (offset < window.scrollY + element.getBoundingClientRect().top) {
} else if (offset < window.scrollY + bounds.top) {
return { previous, next: entry };
}
previous = entry;