@@ -12,12 +12,9 @@ export default function DLL (element,callbackFn){
1212
1313 // callback
1414 callbackFn = typeof callbackFn === 'function' ? callbackFn : null ; // callback function
15-
16- // bind
17- let self = this ,
1815
19- // element's src attribute
20- elementSRC = element && element . getAttribute ( 'data-src' ) || null , //element has own data-src attribute
16+ // element's src attribute
17+ let elementSRC = element && element . getAttribute ( 'data-src' ) || null , //element has own data-src attribute
2118
2219 // private method
2320 getElements = function ( ) { // we get images of a given object or itself
@@ -36,32 +33,32 @@ export default function DLL (element,callbackFn){
3633 Array . from ( queue ) . map ( x => mediaItems . push ( x ) )
3734
3835 return mediaItems ;
39- } ;
36+ } ,
4037
41- // public methods
42- self . load = function ( mediaElement , imageCallback ) {
43- var isVideo = mediaElement . tagName === 'SOURCE' ,
44- loadMethod = isVideo ? 'onloadstart' : 'onload' ,
45- loadEvent = isVideo ? 'loadstart' : 'load' ,
46- newVideo = isVideo ? document . createElement ( 'VIDEO' ) : 0 ,
47- mediaObject = isVideo ? document . createElement ( 'SOURCE' ) : new Image ( ) ,
48- loadTarget = isVideo ? newVideo : mediaObject ,
49- src = mediaElement . getAttribute ( 'data-src' ) ;
38+ // public methods
39+ load = function ( mediaElement , imageCallback ) {
40+ var isVideo = mediaElement . tagName === 'SOURCE' ,
41+ loadMethod = isVideo ? 'onloadstart' : 'onload' ,
42+ loadEvent = isVideo ? 'loadstart' : 'load' ,
43+ newVideo = isVideo ? document . createElement ( 'VIDEO' ) : 0 ,
44+ mediaObject = isVideo ? document . createElement ( 'SOURCE' ) : new Image ( ) ,
45+ loadTarget = isVideo ? newVideo : mediaObject ,
46+ src = mediaElement . getAttribute ( 'data-src' ) ;
5047
51- one ( loadTarget , loadEvent , ( ) => {
52- if ( mediaElement . tagName === 'IMG' ) { mediaElement . src = src ; } // 'IMG'
53- else if ( mediaElement . tagName === 'SOURCE' ) { // 'VIDEO' 'SOURCE'
54- mediaElement . src = src ;
55- mediaElement . parentNode . load ( ) ;
56- }
57- else { mediaElement . style . backgroundImage = 'url("' + src + '")' ; } // background-image
58- mediaElement . removeAttribute ( 'data-src' ) ;
59- imageCallback && imageCallback ( ) ;
60- } )
61- mediaObject . src = src ;
62- newVideo && ( newVideo . appendChild ( mediaObject ) ) ;
48+ one ( loadTarget , loadEvent , ( ) => {
49+ if ( mediaElement . tagName === 'IMG' ) { mediaElement . src = src ; } // 'IMG'
50+ else if ( mediaElement . tagName === 'SOURCE' ) { // 'VIDEO' 'SOURCE'
51+ mediaElement . src = src ;
52+ mediaElement . parentNode . load ( ) ;
53+ }
54+ else { mediaElement . style . backgroundImage = 'url("' + src + '")' ; } // background-image
55+ mediaElement . removeAttribute ( 'data-src' ) ;
56+ imageCallback && imageCallback ( ) ;
57+ } )
58+ mediaObject . src = src ;
59+ newVideo && ( newVideo . appendChild ( mediaObject ) ) ;
6360
64- }
61+ }
6562
6663 // init
6764 tryWrapper ( ( ) => {
@@ -70,9 +67,9 @@ export default function DLL (element,callbackFn){
7067
7168 mediaTargets . map ( ( x , i ) => {
7269 if ( i === mediaTargets . length - 1 && callbackFn ) {
73- self . load ( x , callbackFn ) ;
70+ load ( x , callbackFn ) ;
7471 } else {
75- self . load ( x )
72+ load ( x )
7673 }
7774 } )
7875 }
0 commit comments