|
1 | 1 | // ==UserScript== |
2 | 2 | // @name 智友邦论坛增强 |
3 | | -// @version 1.1.3 |
| 3 | +// @version 1.1.4 |
4 | 4 | // @author X.I.U |
5 | | -// @description 自动签到、自动回复、自动无缝翻页、清理置顶帖子、清理帖子标题〖XXX〗【XXX】文字 |
| 5 | +// @description 自动签到、自动回复、自动无缝翻页、清理置顶帖子、简化兑换附件/附件下载、清理帖子标题〖XXX〗【XXX】文字 |
6 | 6 | // @icon http://bbs.zhiyoo.net/favicon.ico |
7 | 7 | // @match *://bbs.zhiyoo.net/* |
8 | 8 | // @match *://www.zhiyoo.net/search.php* |
|
119 | 119 | SEARCH: DBSite.search.SiteTypeID // 搜索结果列表 |
120 | 120 | }; |
121 | 121 |
|
| 122 | + var attachmentHrefTime = 0; |
122 | 123 | curSite.pageUrl = ""; // 下一页URL |
123 | 124 |
|
124 | 125 | var patt_thread = /\/thread-\d+-\d+\-\d+.html/, // 匹配 /thread-XXX-X-X.html 帖子正则表达式 |
125 | 126 | patt_search = /\/thread-\d+-\d+\-\d+.html/, // 匹配搜索结果列表正则表达式 |
126 | | - patt_posttitle = /^〖.+〗(:)?|^【.+】(:)?/; // 匹配帖子标题中的〖XXX〗【XXX】正则表达式 |
| 127 | + patt_posttitle = /^〖.+〗(:)?|^【.+】(:)?/, // 匹配帖子标题中的〖XXX〗【XXX】正则表达式 |
| 128 | + patt_attachment_href = /(?<=\\').+(?=\\')/ |
127 | 129 |
|
128 | 130 | if (location.pathname === '/plugin.php'){ |
129 | 131 | switch(getQueryVariable("id")) |
130 | 132 | { |
131 | | - case 'dsu_paulsign:sign': // 被重定向到签到页面 |
132 | | - qiandao(); // 自动签到 |
| 133 | + case 'dsu_paulsign:sign': // 被重定向到签到页面 |
| 134 | + qiandao(); // 自动签到 |
133 | 135 | break; |
134 | | - case 'piaobo_attachment': // 兑换附件后的提示页面 |
135 | | - attachmentBack(); // 立即返回帖子 |
| 136 | + case 'piaobo_attachment': // 兑换附件后的提示页面 |
| 137 | + attachmentBack(); // 立即返回帖子 |
| 138 | + break; |
| 139 | + case 'threed_attach:downld': // 附件下载页面 |
| 140 | + goPan(); // 跳转至网盘页 |
136 | 141 | break; |
137 | 142 | } |
138 | 143 | }else if(location.pathname === '/forum.php'){ |
|
141 | 146 | case 'viewthread': // 浏览帖子内容 |
142 | 147 | showHide(); // 先看看是否有隐藏内容,如果已显示则定位到隐藏内容区域,如果没有隐藏内容,则啥都不干 |
143 | 148 | autoReply(); // 自动回复(有隐藏内容才会回复),回复过就定位到底部(隐藏内容区域) |
| 149 | + var attachmentHref_Interval = setInterval(attachmentHref,100); // 兑换附件按钮改为直链(不再弹出确认提示框) |
144 | 150 | break; |
145 | 151 | case 'forumdisplay': // 浏览帖子列表 |
146 | | - curSite = DBSite.forumdisplay; // 帖子列表页 |
| 152 | + curSite = DBSite.forumdisplay; // 帖子列表页(自动翻页) |
147 | 153 | cleanTop(); // 清理置顶帖子 |
148 | 154 | cleanPostTitle(); // 清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字 |
149 | 155 | pageLoading(); // 自动无缝翻页 |
150 | 156 | break; |
151 | 157 | } |
152 | 158 | }else if(location.pathname === '/search.php'){ |
153 | | - curSite = DBSite.search; // 搜索结果列表页 |
154 | | - pageLoading(); // 自动无缝翻页 |
| 159 | + curSite = DBSite.search; // 搜索结果列表页(自动翻页) |
| 160 | + pageLoading(); // 自动无缝翻页 |
155 | 161 | }else if (patt_thread.test(location.pathname)){ // 对于 /thread-XXX-X-X.html 这种帖子页面也和上面一样 |
156 | 162 | showHide(); |
157 | 163 | autoReply(); |
|
254 | 260 | } |
255 | 261 |
|
256 | 262 |
|
| 263 | + // 附件下载页直接跳转至网盘 |
| 264 | + function goPan() { |
| 265 | + var gopan = document.querySelector('.threed_panbox .panframe .pan_left p a'); |
| 266 | + if (gopan){ |
| 267 | + location.href=gopan.href; |
| 268 | + } |
| 269 | + } |
| 270 | + |
| 271 | + |
| 272 | + // 兑换附件按钮改为直链(不再弹出确认提示框) |
| 273 | + function attachmentHref() { |
| 274 | + attachmentHrefTime += 1; // 计算该函数执行次数 |
| 275 | + var attachmenthref = document.querySelector('.tab_button .button a'); |
| 276 | + if (attachmenthref && attachmenthref.href == "javascript:;"){ |
| 277 | + var attachmenthref_href = attachmenthref.onclick.toString(); |
| 278 | + attachmenthref.href = attachmenthref_href.match(patt_attachment_href)[0]; |
| 279 | + attachmenthref.onclick = null; |
| 280 | + } |
| 281 | + if (attachmentHrefTime == 50 || document.getElementsByClassName("showhide").length > 0){ // 当该函数执行超过50次(5秒),或没有隐藏内容时停止定时执行 |
| 282 | + clearInterval(attachmentHref_Interval) |
| 283 | + } |
| 284 | + } |
| 285 | + |
| 286 | + |
257 | 287 | // 清理置顶帖子 |
258 | 288 | function cleanTop(){ |
259 | 289 | var showhide = document.querySelectorAll("a.showhide.y"); |
|
0 commit comments