From e74f2cbdc8c125354993136f900eda6fbf4094f1 Mon Sep 17 00:00:00 2001 From: "lzyme.dev@gmail.com" Date: Thu, 10 Sep 2026 16:32:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=A3=81=E5=8A=9B=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E8=8E=B7=E5=8F=96=E5=A4=B1=E8=B4=A5=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E4=B8=A2=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/jhs-enhance.user.js | 21 ++++++++++++++++----- package.json | 2 +- src/plugins/magnet-hub.js | 19 +++++++++++++++---- vite.config.mjs | 6 +++--- 4 files changed, 35 insertions(+), 13 deletions(-) diff --git a/dist/jhs-enhance.user.js b/dist/jhs-enhance.user.js index 97aa4c5..ea43df0 100644 --- a/dist/jhs-enhance.user.js +++ b/dist/jhs-enhance.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name JHS-enhance // @namespace JHS-enhance -// @version 3.3.13 +// @version 3.3.14 // @author xiebro,fireinrain // @description Jav-鉴黄师 增强脚本。列表页:作品状态标签、一键筛选、新作品检测、演员黑名单过滤;详情页:磁力链接高亮、DMM 多画质预览视频、标题翻译、整合字幕搜索(迅雷+SubTitleCat)并支持 115 直传、多源预览图(javfree/projectjav/javstore)含来源切换;数据:115 网盘目录匹配与多目录选择、云盘备份/恢复、跨 Tab 同步;其他:自动翻页、分类折叠、Top250、以图识图、热门榜单、评论查看、相关清单。支持 JavDB / JavBus / JavSee / SeeJav / FC2 / JavTrailers // @license MIT @@ -11534,6 +11534,8 @@ ${err.stack}` : ""); } searchEngine($container, $sortSelect, engine, keyword) { + this.currentEngine = engine; + this.currentKeyword = keyword; $container.html(`
正在从 ${engine.name} 搜索 "${keyword}"...
`); const cacheKey = `${engine.name}_${keyword}`; sessionStorage.getItem(cacheKey); @@ -11551,11 +11553,11 @@ ${err.stack}` : ""); $sortSelect.prop("disabled", results.length === 0); this.displayResults($container, results, engine.name); } catch (e) { - $container.html(`
解析 ${engine.name} 结果失败: ${e.message}
`); + this.showError($container, `解析 ${engine.name} 结果失败: ${e.message}`); } }, onerror: (error) => { - $container.html(`
从 ${engine.name} 获取数据失败: ${error.statusText}
`); + this.showError($container, `从 ${engine.name} 获取数据失败: ${error.statusText}`); } })); } @@ -11564,6 +11566,15 @@ ${err.stack}` : ""); } })); } + + showError($container, message) { + $container.html(`
${message} 🔄 刷新
`); + const $select = $container.closest(".magnet-container").find(".magnet-sort-select"); + $container.find("#retrySearch").on("click", ((e) => { + e.preventDefault(); + this.searchEngine($container, $select, this.currentEngine, this.currentKeyword); + })); + } displayResults($container, results, engineName) { $container.empty(); const sortMode = localStorage.getItem("jhs_magnetSort") || "size"; @@ -11958,11 +11969,11 @@ ${err.stack}` : ""); $sortSelect.prop("disabled", results.length === 0); _this.displayResults($container, results, engine.name); } catch (e) { - $container.html(`
解析 ${engine.name} 结果失败: ${e.message}
`); + _this.showError($container, `解析 ${engine.name} 结果失败: ${e.message}`); } }, onerror: (error) => { - $container.html(`
从 ${engine.name} 获取数据失败: ${error.statusText}
`); + _this.showError($container, `从 ${engine.name} 获取数据失败: ${error.statusText}`); } }); } diff --git a/package.json b/package.json index 2fce966..bd606a0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jhs-enhance", - "version": "3.3.14", + "version": "3.3.15", "description": "Jav-鉴黄师 油猴脚本 - 工程化版本", "type": "module", "scripts": { diff --git a/src/plugins/magnet-hub.js b/src/plugins/magnet-hub.js index 383c2b2..934a86d 100644 --- a/src/plugins/magnet-hub.js +++ b/src/plugins/magnet-hub.js @@ -580,6 +580,8 @@ class MagnetHubPlugin extends BasePlugin { } searchEngine($container, $sortSelect, engine, keyword) { + this.currentEngine = engine; + this.currentKeyword = keyword; $container.html(`
正在从 ${engine.name} 搜索 "${keyword}"...
`); const cacheKey = `${engine.name}_${keyword}`; sessionStorage.getItem(cacheKey); @@ -597,11 +599,11 @@ class MagnetHubPlugin extends BasePlugin { $sortSelect.prop("disabled", results.length === 0); this.displayResults($container, results, engine.name); } catch (e) { - $container.html(`
解析 ${engine.name} 结果失败: ${e.message}
`); + this.showError($container, `解析 ${engine.name} 结果失败: ${e.message}`); } }, onerror: error => { - $container.html(`
从 ${engine.name} 获取数据失败: ${error.statusText}
`); + this.showError($container, `从 ${engine.name} 获取数据失败: ${error.statusText}`); } })); } @@ -611,6 +613,15 @@ class MagnetHubPlugin extends BasePlugin { })); } + showError($container, message) { + $container.html(`
${message} 🔄 刷新
`); + const $select = $container.closest(".magnet-container").find(".magnet-sort-select"); + $container.find("#retrySearch").on("click", (e => { + e.preventDefault(); + this.searchEngine($container, $select, this.currentEngine, this.currentKeyword); + })); + } + displayResults($container, results, engineName) { $container.empty(); const sortMode = localStorage.getItem("jhs_magnetSort") || "size"; @@ -1000,11 +1011,11 @@ class MagnetHubPlugin extends BasePlugin { $sortSelect.prop("disabled", results.length === 0); _this.displayResults($container, results, engine.name); } catch (e) { - $container.html(`
解析 ${engine.name} 结果失败: ${e.message}
`); + _this.showError($container, `解析 ${engine.name} 结果失败: ${e.message}`); } }, onerror: error => { - $container.html(`
从 ${engine.name} 获取数据失败: ${error.statusText}
`); + _this.showError($container, `从 ${engine.name} 获取数据失败: ${error.statusText}`); } }); } diff --git a/vite.config.mjs b/vite.config.mjs index adb9913..116e411 100644 --- a/vite.config.mjs +++ b/vite.config.mjs @@ -6,9 +6,9 @@ export default defineConfig({ monkey({ entry: 'src/main.js', userscript: { - name: 'JHS-enhance', - namespace: 'JHS-enhance', - version: '3.3.14', + name: 'JHS-enhance', + namespace: 'JHS-enhance', + version: '3.3.15', author: 'xiebro,fireinrain', description: 'Jav-鉴黄师 增强脚本。列表页:作品状态标签、一键筛选、新作品检测、演员黑名单过滤;详情页:磁力链接高亮、DMM 多画质预览视频、标题翻译、整合字幕搜索(迅雷+SubTitleCat)并支持 115 直传、多源预览图(javfree/projectjav/javstore)含来源切换;数据:115 网盘目录匹配与多目录选择、云盘备份/恢复、跨 Tab 同步;其他:自动翻页、分类折叠、Top250、以图识图、热门榜单、评论查看、相关清单。支持 JavDB / JavBus / JavSee / SeeJav / FC2 / JavTrailers', license: 'MIT',