fix weird scrolling behavior
This commit is contained in:
parent
cf9d3bd5b5
commit
e4973fab0b
1 changed files with 10 additions and 13 deletions
|
@ -3,17 +3,13 @@ var messages = document.getElementById('messages');
|
||||||
var form = document.getElementById('form');
|
var form = document.getElementById('form');
|
||||||
var input = document.getElementById('input');
|
var input = document.getElementById('input');
|
||||||
|
|
||||||
async function nextPage(e) {
|
|
||||||
input.value = '';
|
|
||||||
main(new Event('click'));
|
|
||||||
}
|
|
||||||
|
|
||||||
async function goPage(count) {
|
async function goPage(count) {
|
||||||
let counter = input.value.match(/[^\s]+$/g);
|
let counter = input.value.match(/[^\s]+$/g);
|
||||||
if (!counter) return;
|
if (!counter) return false;
|
||||||
|
|
||||||
input.value = `${input.value.match(/^[^\s]+/g)[0]} ${counter[0] * 1 + count}`;
|
input.value = `${input.value.match(/^[^\s]+/g)[0]} ${counter[0] * 1 + count}`;
|
||||||
main(new Event('click'));
|
main(new Event('placeholder'));
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function addMsg(msg) {
|
async function addMsg(msg) {
|
||||||
|
@ -33,19 +29,18 @@ async function addMsg(msg) {
|
||||||
item.textContent = line.slice(2);
|
item.textContent = line.slice(2);
|
||||||
img.src = `arrows/right.svg`;
|
img.src = `arrows/right.svg`;
|
||||||
}
|
}
|
||||||
|
|
||||||
item.insertBefore(img, item.childNodes[0])
|
item.insertBefore(img, item.childNodes[0])
|
||||||
}
|
}
|
||||||
wrap.appendChild(item);
|
wrap.appendChild(item);
|
||||||
}
|
}
|
||||||
messages.appendChild(wrap);
|
messages.appendChild(wrap);
|
||||||
window.scrollTo(0, document.body.scrollHeight);
|
window.scrollTo(0, messages.offsetHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function main(e) {
|
async function main(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
if (!input.value) return;
|
if (!input.value) return false;
|
||||||
|
|
||||||
let msg = await fetch("https://elem.dervland.net/" /*"/"*/, {
|
let msg = await fetch("https://elem.dervland.net/" /*"/"*/, {
|
||||||
"method": "POST",
|
"method": "POST",
|
||||||
|
@ -60,13 +55,15 @@ async function main(e) {
|
||||||
|
|
||||||
addMsg(input.value)
|
addMsg(input.value)
|
||||||
addMsg(msg)
|
addMsg(msg)
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
form.addEventListener('submit', main);
|
form.addEventListener('submit', main);
|
||||||
|
|
||||||
document.querySelector('.send').addEventListener('click', main);
|
document.querySelector('.send').addEventListener('click', main);
|
||||||
document.querySelector('.prev').addEventListener('click', () => goPage(1));
|
document.querySelector('.prev').addEventListener('click', (e) => { e.preventDefault(); return goPage(1) });
|
||||||
document.querySelector('.next').addEventListener('click', () => goPage(-1));
|
document.querySelector('.next').addEventListener('click', (e) => { e.preventDefault(); return goPage(-1) });
|
||||||
|
|
||||||
input.value = '/inv 1';
|
input.value = '/inv 1';
|
||||||
goPage(0);
|
goPage(0);
|
Loading…
Reference in a new issue