|
1 | 1 | // ==UserScript== |
2 | 2 | // @name 智友邦论坛增强 |
3 | | -// @version 1.0.5 |
| 3 | +// @version 1.0.6 |
4 | 4 | // @author X.I.U |
5 | | -// @description 自动签到、自动回复、自动无缝翻页、清理置顶帖子 |
| 5 | +// @description 自动签到、自动回复、自动无缝翻页、清理置顶帖子、清理帖子标题〖XXX〗【XXX】文字 |
6 | 6 | // @icon http://bbs.zhiyoo.net/favicon.ico |
7 | 7 | // @match *://bbs.zhiyoo.net/* |
8 | 8 | // @grant GM_xmlhttpRequest |
|
15 | 15 | // 签到后跳转的URL |
16 | 16 | var qiandao_Redirect_URL = `http://bbs.zhiyoo.net/forum.php?mod=forumdisplay&fid=42&filter=author&orderby=dateline`; |
17 | 17 |
|
| 18 | + // 是否开启「清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字」功能,标题中的 APP 名称完全对齐,看起来更舒服!true 为开启,false 为关闭,默认开启。 |
| 19 | + var cleanText = true; |
| 20 | + // 帖子数量,避免重复清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字,用于提高效率 |
| 21 | + var postNum = 0; |
| 22 | + |
18 | 23 | // 检查是否登陆 |
19 | 24 | var loginStatus = false; |
20 | 25 | checkLogin(); |
|
40 | 45 | FORUMDISPLAY: DBSite.forumdisplay.SiteTypeID // 各板块帖子列表 |
41 | 46 | }; |
42 | 47 |
|
43 | | - var patt_thread = /\/thread-\d+-\d+\-\d+.html/; // 匹配 /thread-XXX-X-X.html 帖子正则表达式 |
| 48 | + var patt_thread = /\/thread-\d+-\d+\-\d+.html/, // 匹配 /thread-XXX-X-X.html 帖子正则表达式 |
| 49 | + patt_posttitle = /〖.+〗:|【.+】:/; // 匹配帖子标题中的〖XXX〗【XXX】正则表达式 |
44 | 50 |
|
45 | 51 | if (location.pathname === '/plugin.php'){ |
46 | 52 | switch(getQueryVariable("id")) |
|
64 | 70 | curSite = DBSite.forumdisplay; |
65 | 71 | curSite.pageUrl = ""; // 下一页URL |
66 | 72 | cleanTop(); // 清理置顶帖子 |
| 73 | + cleanPostTitle(); // 清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字 |
67 | 74 | pageLoading(); // 自动翻页 |
68 | 75 | break; |
69 | 76 | } |
|
101 | 108 |
|
102 | 109 | // 自动签到 |
103 | 110 | function qiandao(){ |
104 | | - if (loginStatus == true){ |
| 111 | + if (loginStatus){ |
105 | 112 | if(document.getElementById("yl")) |
106 | 113 | { |
107 | 114 | document.querySelector('#yl').click(); |
|
114 | 121 |
|
115 | 122 | // 自动回复 |
116 | 123 | function autoReply(){ |
117 | | - if (loginStatus == true){ |
| 124 | + if (loginStatus){ |
118 | 125 | // 存在隐藏内容,自动回复 |
119 | 126 | if (document.getElementsByClassName("locked").length > 0){ |
120 | 127 | document.querySelector('#saya_fastreply_div div').click(); |
|
127 | 134 |
|
128 | 135 | // 定位到隐藏内容区域 |
129 | 136 | function showHide(){ |
130 | | - if (loginStatus == true){ |
| 137 | + if (loginStatus){ |
131 | 138 | // 如果已显示隐藏内容,则定位到隐藏内容区域 |
132 | 139 | // 如果没有发现已显示隐藏内容,就不定位了 |
133 | 140 | if (document.getElementsByClassName("showhide").length > 0){ |
|
156 | 163 | } |
157 | 164 |
|
158 | 165 |
|
| 166 | + // 清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字 |
| 167 | + function cleanPostTitle(){ |
| 168 | + if (cleanText){ |
| 169 | + var cleanposttitle = document.querySelectorAll("a.s.xst"); |
| 170 | + if (cleanposttitle.length > 0){ |
| 171 | + for(var num = postNum;num<cleanposttitle.length;num++){ |
| 172 | + cleanposttitle[num].innerText = cleanposttitle[num].innerText.replace(patt_posttitle, ``); |
| 173 | + postNum += 1; |
| 174 | + } |
| 175 | + /*cleanposttitle.forEach(function(el){ |
| 176 | + el.innerText = el.innerText.replace(patt_posttitle, ``); |
| 177 | + });*/ |
| 178 | + } |
| 179 | + } |
| 180 | + } |
| 181 | + |
| 182 | + |
159 | 183 | // 滚动条事件 |
160 | 184 | function windowScroll(fn1) { |
161 | 185 | var beforeScrollTop = document.documentElement.scrollTop, |
|
235 | 259 | pageElems.forEach(function (one) { |
236 | 260 | toElement.insertAdjacentElement(addTo, one); |
237 | 261 | }); |
| 262 | + // 清理帖子列表中帖子标题开头的〖XXX〗【XXX】文字 |
| 263 | + cleanPostTitle(); |
238 | 264 | // 替换待替换元素 |
239 | 265 | try { |
240 | 266 | let oriE = getAllElements(curSite.pager.replaceE); |
|
0 commit comments