Skip to content

Commit c3ef408

Browse files
committed
feat(ImageLoader): remove dummy element after image load
1 parent e8d702f commit c3ef408

File tree

4 files changed

+11
-13
lines changed

4 files changed

+11
-13
lines changed

src/app/image-loader/image-loader/image-loader.component.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<img
2-
*ngIf="image"
2+
#img
33
[src]="src"
44
[srcset]="srcset"
55
[alt]="alt"
@@ -10,7 +10,7 @@
1010
(load)="onImageLoad($event)">
1111

1212
<img
13-
#dummyImg
13+
*ngIf="preloadSrc.length || preloadSrcset.length"
1414
class="sn-img-dummy"
1515
[srcset]="preloadSrcset"
1616
[src]="preloadSrc"
Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
.sn-img-dummy {
2-
display: block;
3-
left: 0;
4-
position: fixed;
5-
right: 0;
6-
top: -999rem;
2+
opacity: 0;
3+
height: 0;
4+
width: 0;
75
visibility: hidden;
8-
z-index: -9999;
6+
display: block;
97
}

src/app/image-loader/image-loader/image-loader.component.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ describe('ImageLoaderComponent', () => {
138138
component.supportsSrcSet = false;
139139
component.size = 'xs';
140140
component.loaded = false;
141-
component.dummyImg.nativeElement = { src: null };
141+
component.img.nativeElement = { src: null };
142142
component.preloadImage();
143143
expect(component.preloadSrc).toEqual('http://via.placeholder.com/150x350?text=xs+1x');
144144

@@ -153,7 +153,7 @@ describe('ImageLoaderComponent', () => {
153153
component.supportsSrcSet = false;
154154
component.size = 'xs';
155155
component.loaded = false;
156-
component.dummyImg.nativeElement = { src: null };
156+
component.img.nativeElement = { src: null };
157157
component.preloadImage();
158158
expect(component.preloadSrc).toEqual('http://via.placeholder.com/150x350?text=xs+1x');
159159

src/app/image-loader/image-loader/image-loader.component.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ export class ImageLoaderComponent implements OnInit, AfterViewInit, OnDestroy {
132132
*
133133
* @memberof ImageLoaderComponent
134134
*/
135-
@ViewChild('dummyImg')
136-
public dummyImg: ElementRef;
135+
@ViewChild('img')
136+
public img: ElementRef;
137137
/**
138138
* If true it means the browser supports `srcset`
139139
* @memberof ImageLoaderComponent
@@ -255,7 +255,7 @@ export class ImageLoaderComponent implements OnInit, AfterViewInit, OnDestroy {
255255
const retinaImg = this.image.images.find(retinaImage => retinaImage.size === this.size);
256256
const imageNormal = retinaImg.x1;
257257
const imageRetina = retinaImg.x2;
258-
if ('srcset' in this.dummyImg.nativeElement) {
258+
if ('srcset' in this.img.nativeElement) {
259259
this.supportsSrcSet = true;
260260
}
261261
this.preloadSrcset = `${imageNormal} 1x, ${imageRetina} 2x`;

0 commit comments

Comments
 (0)