add enter overlay event listener now is a function

This commit is contained in:
Spedon
2023-03-25 18:14:15 +08:00
parent eda2029d14
commit 3ba067b19e
2 changed files with 22 additions and 15 deletions

View File

@@ -26,10 +26,25 @@ let EnterOverlayClickAbCtl = new AbortController()
export const stackDepth: number = 5
// activate top image
const activate = (index: number, mouseX: number, mouseY: number): void => {
export const addEnterOverlayEL = (e: HTMLImageElement): void => {
EnterOverlayClickAbCtl.abort()
EnterOverlayClickAbCtl = new AbortController()
e.addEventListener(
'click',
() => {
void enterOverlay()
},
{
passive: true,
once: true,
signal: EnterOverlayClickAbCtl.signal
}
)
}
// activate top image
const activate = (index: number, mouseX: number, mouseY: number): void => {
addEnterOverlayEL(images[index])
const indexesNum: number = pushIndex(
index,
trailingImageIndexes,
@@ -45,17 +60,6 @@ const activate = (index: number, mouseX: number, mouseY: number): void => {
images[trailingImageIndexes[i]].style.zIndex = `${i}`
}
images[index].style.display = 'block'
images[index].addEventListener(
'click',
() => {
void enterOverlay()
},
{
passive: true,
once: true,
signal: EnterOverlayClickAbCtl.signal
}
)
last = { x: mouseX, y: mouseY }
}