export class Image {
image: HTMLImageElement;
constructor(img: HTMLImageElement) {
this.image = img;
}
fadeIn(): void {
this.image.style.opacity = "1";
}
attachEvents(): void {
this.image.addEventListener("load", () => this.fadeIn());
}
start(): void {
if (this.image.dataset.loadTransition === "false") {
return;
}
this.image.style.opacity = "0";
if (this.image.complete) {
this.fadeIn();
} else {
this.attachEvents();
}
}
}