Skip to content

Commit 8056575

Browse files
committed
新增 [回帖小尾巴] 功能
1 parent 10c35bc commit 8056575

1 file changed

Lines changed: 62 additions & 4 deletions

File tree

Hostloc-Enhanced.user.js

Lines changed: 62 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// ==UserScript==
22
// @name 全球主机交流论坛增强
3-
// @version 1.2.7
3+
// @version 1.2.8
44
// @author X.I.U
5-
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
5+
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
66
// @match *://hostloc.com/*
77
// @match *://91ai.net/*
88
// @icon https://www.hostloc.com/favicon.ico
@@ -26,6 +26,7 @@
2626
['menu_customBlockUsers', '自定义屏蔽用户', '自定义屏蔽用户', []],
2727
['menu_blockKeywords', '屏蔽关键词(帖子标题)', '屏蔽关键词(帖子标题)', false],
2828
['menu_customBlockKeywords', '自定义屏蔽关键词', '自定义屏蔽关键词', []],
29+
['menu_customLittleTail', '自定义小尾巴内容', '自定义小尾巴内容', []],
2930
['menu_pageLoading', '自动无缝翻页(总开关)', '自动无缝翻页', true],
3031
['menu_thread_pageLoading', '帖子内自动翻页', '帖子内自动翻页', true],
3132
['menu_backToTop', '快捷回到顶部(右键点击两侧空白处)', '快捷回到顶部', true],
@@ -54,6 +55,8 @@
5455
menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customBlockUsers()});
5556
} else if (menu_ALL[i][0] === 'menu_customBlockKeywords') {
5657
menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customBlockKeywords()});
58+
} else if (menu_ALL[i][0] === 'menu_customLittleTail') {
59+
menu_ID[i] = GM_registerMenuCommand(`[ ⚑ ] ${menu_ALL[i][1]}`, function(){customLittleTail()});
5760
} else {
5861
menu_ID[i] = GM_registerMenuCommand(`[ ${menu_ALL[i][3]?'√':'×'} ] ${menu_ALL[i][1]}`, function(){menu_switch(`${menu_ALL[i][3]}`,`${menu_ALL[i][0]}`,`${menu_ALL[i][2]}`)});
5962
}
@@ -156,13 +159,15 @@
156159
showPosts(); // 自动显示帖子内被隐藏的回复
157160
blockUsers('thread'); // 屏蔽用户(黑名单)
158161
if (menu_value('menu_onlineStatus')) onlineStatus(); // 显示是否在线
162+
littleTail('thread'); // 小尾巴
159163
} else if (patt_forum.test(location.pathname) || location.search.indexOf('mod=forumdisplay') > -1) { // 各板块帖子列表
160164
curSite = DBSite.forum;
161165
if (menu_value('menu_collapsedNowPost')) collapsedNowPost(); // 收起当前帖子预览(左键左右两侧空白处)
162166
if (menu_value('menu_delate255')) delate255(); // 自动隐藏阅读权限 255 的帖子
163167
blockUsers('forum'); // 屏蔽用户(黑名单)
164168
blockKeywords(); // 屏蔽关键词(帖子标题)
165169
vfastpostDOMNodeInserted(); // 监听插入事件(预览快速回复带签名)
170+
littleTail('forum'); // 小尾巴
166171
if (patt_forum.test(location.pathname)) blockDOMNodeInserted(); //监听插入事件(有新的回复主题,点击查看)
167172
}else if (patt_guide.test(location.search)) { // 导读帖子列表
168173
curSite = DBSite.guide;
@@ -171,10 +176,12 @@
171176
blockUsers('search'); // 屏蔽用户(黑名单)
172177
} else if(location.pathname === '/home.php' && location.search.indexOf('mod=space&do=notice&view=mypost') > -1) { // 消息(帖子/点评/提到)
173178
blockUsers('notice'); // 屏蔽用户(黑名单)
174-
} else if(location.pathname === '/home.php' && location.search === '?mod=space&do=pm') { // 消息(私人聊天)
179+
} else if(location.pathname === '/home.php' && location.search.indexOf('mod=space&do=pm') > -1) { // 消息(私人聊天)
175180
blockUsers('pm'); // 屏蔽用户(黑名单)
176-
} else if(location.pathname === '/forum.php' && location.search === '?mod=guide&view=my&type=reply') { // 我的帖子:回复
181+
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=guide&view=my&type=reply') > -1) { // 我的帖子:回复
177182
curSite = DBSite.myreply;
183+
} else if(location.pathname === '/forum.php' && location.search.indexOf('mod=post&action=reply') > -1) { // 回复:高级回复
184+
littleTail('reply'); // 小尾巴
178185
}
179186

180187
curSite.pageUrl = ""; // 下一页URL
@@ -360,6 +367,57 @@
360367
}
361368

362369

370+
// 自定义小尾巴内容
371+
function customLittleTail() {
372+
let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效\n(换行请使用 \\n 例如:我是第一行~\\n我是第二行~', GM_getValue('menu_customLittleTail'));
373+
if (newLittleTail === '') {
374+
GM_setValue('menu_customLittleTail', []);
375+
registerMenuCommand(); // 重新注册脚本菜单
376+
} else if (newLittleTail != null) {
377+
GM_setValue('menu_customLittleTail', newLittleTail);
378+
registerMenuCommand(); // 重新注册脚本菜单
379+
}
380+
};
381+
382+
383+
// 小尾巴
384+
function littleTail(type) {
385+
if (!menu_value('menu_customLittleTail')) return
386+
switch(type) {
387+
case 'forum': // 各版块帖子列表的预览帖子
388+
littleTail_1();
389+
break;
390+
case 'thread': // 帖子内
391+
littleTail_1();
392+
littleTail_2();
393+
break;
394+
case 'reply': // 高级回复
395+
littleTail_3();
396+
break;
397+
}
398+
399+
function littleTail_1() {
400+
let floatlayout_reply = e => {
401+
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="floatlayout_reply"') > -1) {
402+
document.getElementById('postsubmit').onclick = function(){document.getElementById('postmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
403+
}
404+
}
405+
document.addEventListener('DOMNodeInserted', floatlayout_reply); // 监听插入事件
406+
}
407+
408+
function littleTail_2() { // 帖子底部的回复框
409+
document.getElementById('fastpostsubmit').onclick = function(){document.getElementById('fastpostmessage').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
410+
}
411+
412+
function littleTail_3() {
413+
let postsubmit = document.getElementById('postsubmit');
414+
if (postsubmit && postsubmit.innerText === '\n参与/回复主题\n') {
415+
postsubmit.onclick = function(){document.getElementById('e_textarea').value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
416+
}
417+
}
418+
}
419+
420+
363421
// 监听插入事件(回帖间隔)
364422
/*function replyIntervalDOMNodeInserted() {
365423
let replyInterval = e => {

0 commit comments

Comments
 (0)