mirror of
https://iceshrimp.dev/limepotato/jormungandr-bite.git
synced 2024-11-26 11:57:34 -07:00
fix: 🐛 fix scrolling bugs
This commit is contained in:
parent
56d7613b30
commit
d6e2910f74
3 changed files with 25 additions and 6 deletions
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "misskey",
|
||||
"version": "12.118.1-calc.11.6",
|
||||
"version": "12.118.1-calc.12",
|
||||
"codename": "aqua",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
|
|
@ -248,9 +248,9 @@ if (isMobile.value) {
|
|||
}
|
||||
|
||||
function handleTouchMove(evt) {
|
||||
if (!xDown || !yDown) {
|
||||
return;
|
||||
}
|
||||
if (!xDown || !yDown) return;
|
||||
|
||||
if (['INPUT', 'TEXTAREA', 'IMG', 'VIDEO', 'CANVAS'].includes(evt.target.tagName) || evt.target.attributes['contenteditable']) return;
|
||||
|
||||
let xUp = evt.touches[0].clientX;
|
||||
let yUp = evt.touches[0].clientY;
|
||||
|
@ -274,7 +274,7 @@ if (isMobile.value) {
|
|||
timelines.push('global');
|
||||
}
|
||||
|
||||
if (Math.abs(xDiff) > Math.abs(yDiff)) {
|
||||
if (Math.abs(xDiff) > Math.abs(yDiff) && Math.abs(xDiff) > 100) {
|
||||
if (xDiff < 0) {
|
||||
if (src === 'home') {
|
||||
next = 'global';
|
||||
|
|
|
@ -140,9 +140,28 @@ onMounted(() => {
|
|||
|
||||
window.addEventListener('scroll', () => {
|
||||
let windowY = window.scrollY;
|
||||
postButton.style.transform = `scale(${windowY < scrollPos ? '1' : '0'})`;
|
||||
postButton.style.transform = `scale(${windowY < scrollPos ? '1' : '0.3'})`;
|
||||
scrollPos = windowY;
|
||||
}, { passive: true });
|
||||
|
||||
function createScrollStopListener(element: Window, callback: TimerHandler, timeout: number): () => void {
|
||||
let handle = 0;
|
||||
const onScroll = () => {
|
||||
if (handle) {
|
||||
clearTimeout(handle);
|
||||
}
|
||||
postButton.style.transform = 'scale(0.3)';
|
||||
handle = setTimeout(callback, timeout || 200);
|
||||
};
|
||||
element.addEventListener('scroll', onScroll, { passive: true });
|
||||
return () => {
|
||||
element.removeEventListener('scroll', onScroll);
|
||||
};
|
||||
}
|
||||
|
||||
createScrollStopListener(window, () => {
|
||||
postButton.style.transform = 'scale(1)';
|
||||
} , 200);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in a new issue