bind arrows only once

This commit is contained in:
Zhora Shalyapin 2025-03-31 07:28:47 +00:00
parent 4b4990b123
commit 311178d16d

40
main.js
View File

@ -426,7 +426,7 @@
} }
let makeCoordinatesLinks = (function () { let makeCoordinatesLinks = (function () {
var executed = false let executed = false
return function () { return function () {
if (executed) return if (executed) return
executed = true executed = true
@ -697,7 +697,7 @@
} }
let prettifyFiles = (function () { let prettifyFiles = (function () {
var executed = false let executed = false
return function (insertedFileRows) { return function (insertedFileRows) {
if (executed) return if (executed) return
executed = true executed = true
@ -952,23 +952,29 @@
bindArrowsForGallery('.swiper-button-prev', '.swiper-button-next') bindArrowsForGallery('.swiper-button-prev', '.swiper-button-next')
} }
function bindArrowsForGallery(leftButtonQuery, rightButtonQuery) { const bindArrowsForGallery = (function () {
document.addEventListener("keydown", function (e) { let executed = false
if (!document.querySelector("dialog").open) return return function(leftButtonQuery, rightButtonQuery) {
switch (e.key) { if (executed) return
case "ArrowLeft": executed = true
document.querySelector(leftButtonQuery).click()
break
case "ArrowRight": document.addEventListener("keydown", function (e) {
document.querySelector(rightButtonQuery).click() if (!document.querySelector("dialog").open) return
break switch (e.key) {
case "ArrowLeft":
document.querySelector(leftButtonQuery).click()
break
default: return case "ArrowRight":
} document.querySelector(rightButtonQuery).click()
e.preventDefault() break
})
} default: return
}
e.preventDefault()
})
}
})()
async function sendForm() { async function sendForm() {
let formData = new FormData(document.querySelector("form")) let formData = new FormData(document.querySelector("form"))