This commit is contained in:
Flummi
2021-04-22 04:12:40 +02:00
parent 97519de05b
commit 4f35261e66
22 changed files with 322 additions and 158 deletions

View File

@ -1,6 +1,12 @@
(() => {
if(elem = document.querySelector("#my-video")) {
const video = new v0ck(elem);
document.addEventListener("keydown", e => {
if(e.key === " ") {
video[video.paused ? 'play' : 'pause']();
document.querySelector('.v0ck_overlay').classList[video.paused ? 'remove' : 'add']('v0ck_hidden');
}
});
}
let tt = false;
@ -14,9 +20,9 @@
const clickOnElementBinding = selector => () => (elem = document.querySelector(selector)) ? elem.click() : null;
const keybindings = {
"ArrowLeft": clickOnElementBinding("#next"),
"d": clickOnElementBinding("#next"),
"a": clickOnElementBinding("#next"),
"ArrowRight": clickOnElementBinding("#prev"),
"a": clickOnElementBinding("#prev"),
"d": clickOnElementBinding("#prev"),
"r": clickOnElementBinding("#random")
};
document.addEventListener("keydown", e => {
@ -28,9 +34,24 @@
// </keybindings>
// <image-responsive>
if(f0ckimage = document.querySelector("#f0ck-image")) {
f0ckimage.addEventListener("click", e => {
const imgSize = e => new Promise((res, _) => {
const i = new Image();
i.addEventListener('load', function() {
res({ width: this.width, height: this.height });
});
i.src = e.src;
});
if(f0ckimage = document.querySelector("img#f0ck-image")) {
const f0ckimagescroll = document.querySelector("#image-scroll");
f0ckimage.addEventListener("click", async e => {
e.preventDefault();
const img = await imgSize(f0ckimage);
if(img.width > img.height)
return;
f0ckimagescroll.hasAttribute("style")
? f0ckimagescroll.removeAttribute("style")
: f0ckimagescroll.setAttribute("style", "overflow-y: scroll");
f0ckimage.hasAttribute("style")
? f0ckimage.removeAttribute("style")
: f0ckimage.setAttribute("style", "max-height: none; height: auto; width: 100%; position: absolute; left: 0;");
@ -38,19 +59,8 @@
}
// </image-responsive>
// <scroll-event-adder>
if(f0ckimagescroll = document.querySelector("#image-scroll")) {
f0ckimagescroll.addEventListener("click", e => {
e.preventDefault();
f0ckimagescroll.hasAttribute("style")
? f0ckimagescroll.removeAttribute("style")
: f0ckimagescroll.setAttribute("style", "overflow-y: scroll");
});
}
// </scroll-event-adder>
// <scroller>
if(document.querySelector("ul#posts")) {
if(document.querySelector("div#posts")) {
document.addEventListener("wheel", e => {
if((window.innerHeight + window.scrollY) >= document.body.offsetHeight && e.deltaY > 0) {
if(elem = document.querySelector(".pagination > .next:not(.disabled)"))
@ -94,10 +104,10 @@
elem = document.querySelector(".pagination > .prev:not(.disabled)");
}
else {
if(navbar = document.querySelector("nav.navbar") && document.querySelector("ul#posts")) {
if(navbar = document.querySelector("nav.navbar") && document.querySelector("div#posts")) {
if(yDiff > 0 && (window.innerHeight + window.scrollY) >= document.body.offsetHeight) // up
elem = document.querySelector(".pagination > .next:not(.disabled)");
else if(yDiff <= 0 && window.scrollY <= 0 && document.querySelector("ul#posts")) // down
else if(yDiff <= 0 && window.scrollY <= 0 && document.querySelector("div#posts")) // down
elem = document.querySelector(".pagination > .prev:not(.disabled)");
}
}