@@ -857,33 +857,32 @@ try {
857857
858858 // #国外漫画站[welovemanga](https://nicomanga.com)
859859 // test: https://nicomanga.com/read-yuri-no-hajimari-wa-dorei-kara-chapter-6.2.html
860- case 'nicomanga.com' :
860+ case 'nicomanga.com' : {
861+ options = {
862+ name : 'welovemanga' ,
863+ wait : ( ) => unsafeWindow . chapterImages ?. length ,
864+ getImgList : ( ) => unsafeWindow . chapterImages ,
865+ onNext : querySelectorClick ( '.rd_top-right.next:not(.disabled)' ) ,
866+ onPrev : querySelectorClick ( '.rd_top-left.prev:not(.disabled)' ) ,
867+ } ;
868+ break ;
869+ }
861870 case 'weloma.art' :
862- case 'welovemanga.one' : {
863- if ( ! querySelector ( '#listImgs, .chapter-content' ) ) break ;
864-
865- const getImgList = async ( ) : Promise < string [ ] > => {
866- const imgList = querySelectorAll < HTMLImageElement > (
867- 'img.chapter-img:not(.ls-is-cached)' ,
868- )
869- . map ( ( e ) =>
870- (
871- e . dataset . src ||
872- e . dataset . srcset ||
873- e . dataset . original ||
874- e . src
875- ) . trim ( ) ,
876- )
877- . filter ( Boolean ) ;
878- if (
879- imgList . length > 0 &&
880- imgList . every ( ( url ) => ! / l o a d i n g .* \. g i f / . test ( url ) )
881- )
882- return imgList ;
883- await sleep ( 500 ) ;
884- return getImgList ( ) ;
871+ case 'love4u.net' : {
872+ if ( ! querySelector ( '#chapter-images img' ) ) break ;
873+
874+ const getImgUrl = ( e : HTMLImageElement ) => {
875+ const src =
876+ e . dataset . srcset || e . dataset . original || e . dataset . src || e . src ;
877+ if ( src && ! src . endsWith ( '.gif' ) ) return src . trim ( ) ;
878+ if ( e . dataset . img ) return atob ( e . dataset . img ) ;
885879 } ;
886880
881+ const getImgList = ( ) =>
882+ querySelectorAll < HTMLImageElement > ( '#chapter-images img' )
883+ . map ( getImgUrl )
884+ . filter ( Boolean ) as string [ ] ;
885+
887886 options = {
888887 name : 'welovemanga' ,
889888 getImgList,
0 commit comments