@@ -801,11 +801,19 @@ var siteInfo = [
801801 url : / \b r e d d i t \. c o m | r e d d \. i t / ,
802802 getImage : function ( ) {
803803 if ( this . srcset ) {
804- var srcs = this . srcset . split ( / [ x w ] , / i) ;
805- for ( let i = 0 ; i < srcs . length ; i ++ ) {
806- let srcInfo = srcs [ i ] . trim ( ) . split ( " " ) [ 0 ] ;
807- if ( srcInfo . indexOf ( "?width" ) == - 1 ) return srcInfo ;
808- }
804+ let srcs = this . srcset . split ( / [ x w ] , \s * / i) ;
805+ let maxSize = 0 ;
806+ let result = "" ;
807+ srcs . forEach ( srcset => {
808+ let srcArr = srcset . split ( " " ) ;
809+ let curSize = parseInt ( srcArr [ 1 ] ) ;
810+ if ( srcArr [ 0 ] . indexOf ( "?width" ) == - 1 ) return srcArr [ 0 ] ;
811+ if ( curSize > maxSize ) {
812+ maxSize = curSize ;
813+ result = srcArr [ 0 ] ;
814+ }
815+ } ) ;
816+ if ( this . src . indexOf ( "?width" ) !== - 1 ) return result ;
809817 } else if ( / ^ h t t p s ? : \/ \/ p r e v i e w \. / . test ( this . src ) ) {
810818 return this . src . replace ( "preview" , "i" ) . replace ( / \? .* / , "" ) ;
811819 }
@@ -876,7 +884,24 @@ var siteInfo = [
876884 } )
877885 } else if ( / \/ r \/ / . test ( url ) ) {
878886 let img = doc . querySelector ( "img[src^='https://preview.redd.it/']" ) ;
879- if ( img ) return img . src ;
887+ if ( img ) {
888+ if ( img . srcset ) {
889+ let srcs = img . srcset . split ( / [ x w ] , \s * / i) ;
890+ let maxSize = 0 ;
891+ let result = "" ;
892+ srcs . forEach ( srcset => {
893+ let srcArr = srcset . split ( " " ) ;
894+ let curSize = parseInt ( srcArr [ 1 ] ) ;
895+ if ( srcArr [ 0 ] . indexOf ( "?width" ) == - 1 ) return srcArr [ 0 ] ;
896+ if ( curSize > maxSize ) {
897+ maxSize = curSize ;
898+ result = srcArr [ 0 ] ;
899+ }
900+ } ) ;
901+ if ( img . src . indexOf ( "?width" ) !== - 1 ) return result ;
902+ }
903+ return img . src ;
904+ }
880905 img = doc . querySelector ( "[packaged-media-json]" ) ;
881906 if ( img ) {
882907 let mediaJson = img . getAttribute ( "packaged-media-json" ) ;
0 commit comments