diff --git a/ComicRead-AdGuard.user.js b/ComicRead-AdGuard.user.js index 198e54a8..2aceb433 100644 --- a/ComicRead-AdGuard.user.js +++ b/ComicRead-AdGuard.user.js @@ -1,8 +1,8 @@ // ==UserScript== // @name ComicRead // @namespace ComicRead -// @version 10.7.0 -// @description 为漫画站增加双页阅读、翻译等优化体验的增强功能。百合会(记录阅读历史、自动签到等)、百合会新站、动漫之家(解锁隐藏漫画)、E-Hentai(关联 nhentai、快捷收藏、标签染色、识别广告页等)、nhentai(彻底屏蔽漫画、无限滚动)、Yurifans(自动签到)、拷贝漫画(copymanga)(显示最后阅读记录)、PonpomuYuri、再漫画、明日方舟泰拉记事社、禁漫天堂、漫画柜(manhuagui)、漫画DB(manhuadb)、动漫屋(dm5)、绅士漫画(wnacg)、mangabz、komiic、無限動漫、新新漫画、熱辣漫畫、hitomi、koharu、kemono、nekohouse、welovemanga +// @version 10.8.0 +// @description 为漫画站增加双页阅读、翻译等优化体验的增强功能。百合会(记录阅读历史、自动签到等)、百合会新站、动漫之家(解锁隐藏漫画)、E-Hentai(关联 nhentai、快捷收藏、标签染色、识别广告页等)、nhentai(彻底屏蔽漫画、无限滚动)、Yurifans(自动签到)、拷贝漫画(copymanga)(显示最后阅读记录)、PonpomuYuri、再漫画、明日方舟泰拉记事社、禁漫天堂、漫画柜(manhuagui)、漫画DB(manhuadb)、动漫屋(dm5)、绅士漫画(wnacg)、mangabz、komiic、MangaDex、無限動漫、新新漫画、熱辣漫畫、hitomi、koharu、kemono、nekohouse、welovemanga // @description:en Add enhanced features to the comic site for optimized experience, including dual-page reading and translation. E-Hentai (Associate nhentai, Quick favorite, Colorize tags, Floating tag list, etc.) | nhentai (Totally block comics, Auto page turning) | hitomi | Anchira | kemono | nekohouse | welovemanga. // @description:ru Добавляет расширенные функции для удобства на сайт, такие как двухстраничный режим и перевод. // @author hymbz @@ -58,6 +58,7 @@ // @match *://www.mangabz.com/* // @match *://mangabz.com/* // @match *://komiic.com/* +// @match *://mangadex.org/* // @match *://8.twobili.com/* // @match *://a.twobili.com/* // @match *://articles.onemoreplace.tw/* @@ -5374,10 +5375,20 @@ const TranslateRange = () => { const [rangeText, setRangeText] = solidJs.createSignal(''); helper.createEffectOn(rangeText, () => { const imgImgs = helper.extractRange(rangeText(), store.imgList.length); - setImgTranslationEnbale(imgImgs, true); - const closeImgs = []; - for (let i = 0; i < store.imgList.length; i++) if (!imgImgs.has(i)) closeImgs.push(i); - setImgTranslationEnbale(closeImgs, false); + const openImgs = [...imgImgs].filter(i => { + // 过滤掉翻译完成和等待翻译的图片,避免因为范围变化而重新发起翻译 + switch (imgList()[i].translationType) { + case 'show': + case 'wait': + return false; + default: + return true; + } + }); + if (openImgs.length > 0) setImgTranslationEnbale(openImgs, true); + const closeImgs = new Set(); + for (let i = 0; i < store.imgList.length; i++) if (!imgImgs.has(i)) closeImgs.add(i); + if (closeImgs.size > 0) setImgTranslationEnbale(closeImgs, false); setRangeText(helper.descRange(imgImgs, store.imgList.length)); }); @@ -9401,12 +9412,18 @@ const handleVersionUpdate = async () => { _el$.firstChild; web.insert(_el$, () => GM.info.script.version, null); return _el$; - })(), web.template(\`

新增\`)(), web.template(\`