mirror of
https://github.com/notion-enhancer/notion-enhancer.git
synced 2025-04-19 19:19:03 +00:00
Licensing and Conventions
This commit is contained in:
parent
0434cac271
commit
f6bdd473b1
@ -45,18 +45,18 @@ module.exports = {
|
|||||||
if (!document.querySelector(".notion-frame")) return;
|
if (!document.querySelector(".notion-frame")) return;
|
||||||
clearInterval(attempt_interval);
|
clearInterval(attempt_interval);
|
||||||
|
|
||||||
const container = document.createElement('div');
|
const $container = document.createElement('div');
|
||||||
const help = document.querySelector('.notion-help-button');
|
const $help = document.querySelector('.notion-help-button');
|
||||||
const scroll = createElement(
|
const $scroll = createElement(
|
||||||
'<div class="notion-scroll-button" role="button">🠙</div>' // 🠙;
|
'<div class="notion-scroll-button" role="button">🠙</div>' // 🠙;
|
||||||
)
|
)
|
||||||
|
|
||||||
container.className = "bottom-right-buttons";
|
$container.className = "bottom-right-buttons";
|
||||||
help.after(container);
|
$help.after($container);
|
||||||
container.append(scroll);
|
$container.append($scroll);
|
||||||
container.append(help);
|
$container.append($help);
|
||||||
|
|
||||||
scroll.addEventListener('click', () => {
|
$scroll.addEventListener('click', () => {
|
||||||
document
|
document
|
||||||
.querySelector('.notion-frame > .notion-scroller')
|
.querySelector('.notion-frame > .notion-scroller')
|
||||||
.scroll({
|
.scroll({
|
||||||
@ -67,7 +67,7 @@ module.exports = {
|
|||||||
})
|
})
|
||||||
|
|
||||||
let queue = [];
|
let queue = [];
|
||||||
let scroller = document.querySelector('.notion-frame > .notion-scroller');
|
let $scroller = document.querySelector('.notion-frame > .notion-scroller');
|
||||||
|
|
||||||
const observer = new MutationObserver((list, observer) => {
|
const observer = new MutationObserver((list, observer) => {
|
||||||
if (!queue.length) requestAnimationFrame(() => process(queue));
|
if (!queue.length) requestAnimationFrame(() => process(queue));
|
||||||
@ -81,11 +81,11 @@ module.exports = {
|
|||||||
function process(list) {
|
function process(list) {
|
||||||
queue = [];
|
queue = [];
|
||||||
|
|
||||||
let top = scroller.topDistance = store().top || 0;
|
let top = $scroller.top_distance = store().top || 0;
|
||||||
if (top > 0 && store().percent) {
|
if (top > 0 && store().percent) {
|
||||||
let contentHeight = Array.from(scroller.children)
|
let content_height = Array.from($scroller.children)
|
||||||
.reduce((h, c) => h + c.offsetHeight, 0);
|
.reduce((h, c) => h + c.offsetHeight, 0);
|
||||||
scroller.topDistance *= (contentHeight - scroller.offsetHeight) / 100;
|
$scroller.top_distance *= (content_height - $scroller.offsetHeight) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (let { addedNodes } of list) {
|
for (let { addedNodes } of list) {
|
||||||
@ -95,15 +95,15 @@ module.exports = {
|
|||||||
addedNodes[0].className === 'notion-scroller'
|
addedNodes[0].className === 'notion-scroller'
|
||||||
) && (top > 0)
|
) && (top > 0)
|
||||||
) {
|
) {
|
||||||
scroll.classList.add('hidden');
|
$scroll.classList.add('hidden');
|
||||||
|
|
||||||
scroller = document.querySelector('.notion-frame > .notion-scroller');
|
$scroller = document.querySelector('.notion-frame > .notion-scroller');
|
||||||
|
|
||||||
scroller.addEventListener('scroll', (event) => {
|
$scroller.addEventListener('scroll', (event) => {
|
||||||
if (!scroller.topDistance || Math.ceil(event.target.scrollTop) < scroller.topDistance)
|
if (!$scroller.top_distance || Math.ceil(event.target.scrollTop) < $scroller.top_distance)
|
||||||
scroll.classList.add('hidden');
|
$scroll.classList.add('hidden');
|
||||||
else
|
else
|
||||||
scroll.classList.remove('hidden');
|
$scroll.classList.remove('hidden');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* scroll-to-top
|
||||||
|
* (c) 2020 dragonwocky <thedragonring.bod@gmail.com> (https://dragonwocky.me/)
|
||||||
|
* (c) 2020 CloudHill
|
||||||
|
* under the MIT license
|
||||||
|
*/
|
||||||
|
|
||||||
.bottom-right-buttons {
|
.bottom-right-buttons {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 33px;
|
bottom: 33px;
|
||||||
|
Loading…
Reference in New Issue
Block a user