20 lines
663 B
TypeScript
20 lines
663 B
TypeScript
const Elems = `
|
|
.video-player__overlay,
|
|
.click-handler
|
|
`
|
|
|
|
const getElems = () =>
|
|
Elems.split(',')
|
|
.filter(l => l.trim().length)
|
|
.map(elem => document.querySelector<HTMLElement>(elem.trim()))
|
|
.filter((elem): elem is HTMLElement => elem !== null)
|
|
|
|
const elemsSet = () =>
|
|
getElems().forEach(elem => (elem.style.pointerEvents = 'none'))
|
|
const elemsClear = () =>
|
|
getElems().forEach(elem => (elem.style.pointerEvents = ''))
|
|
|
|
addEventListener('keydown', e => e.key === 'Control' && elemsSet())
|
|
addEventListener('keyup', e => e.key === 'Control' && elemsClear())
|
|
addEventListener('click', e => (e.ctrlKey ? elemsSet() : elemsClear()))
|