Minor improvements

This commit is contained in:
Andras Schmelczer 2022-09-24 21:53:50 +02:00
parent cf07001036
commit af45688029
No known key found for this signature in database
GPG key ID: 0EA1BC97D0AB076E
6 changed files with 23 additions and 15 deletions

View file

@ -5,6 +5,6 @@ import './image-viewer.scss';
export const generate = (): html => `
<section id="image-viewer">
<img height="0" width="0" image-viewer-ignore />
<div tabindex="0" id="cancel">${cancel}</div>
<div tabindex="2" id="cancel">${cancel}</div>
</section>
`;

View file

@ -7,11 +7,14 @@ export class PageImageViewer extends PageElement {
super(createElement(generate()));
document.body.addEventListener('click', (event: MouseEvent) => {
if (
event.target instanceof HTMLImageElement &&
!(event.target.attributes['image-viewer-ignore'] as boolean | undefined)
) {
this.showImage(event.target);
const element = event.target as HTMLElement;
if (element.classList?.contains('image')) {
this.showImage(element.querySelector('img')!);
}
if (element instanceof HTMLImageElement) {
this.showImage(element);
}
});
@ -25,6 +28,10 @@ export class PageImageViewer extends PageElement {
}
private showImage(source: HTMLImageElement) {
if (source.attributes['image-viewer-ignore'] as boolean | undefined) {
return;
}
const image = this.query('img') as HTMLImageElement;
image.src = '';
image.src = source.src;