Skip to content

Commit 9d68b65

Browse files
committed
新增 [回帖小尾巴] 支持预览帖子底部的快速回复
1 parent 0505758 commit 9d68b65

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

Hostloc-Enhanced.user.js

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// ==UserScript==
22
// @name 全球主机交流论坛增强
3-
// @version 1.2.8
3+
// @version 1.2.9
44
// @author X.I.U
55
// @description 自动签到(访问空间)、屏蔽用户(黑名单)、屏蔽关键词(帖子标题)、回帖小尾巴、自动无缝翻页、快捷回到顶部(右键点击两侧空白处)、收起预览帖子(左键点击两侧空白处)、预览帖子快速回复带签名、显示是否在线、显示帖子内隐藏回复、屏蔽阅读权限 255 帖子
66
// @match *://hostloc.com/*
@@ -369,7 +369,7 @@
369369

370370
// 自定义小尾巴内容
371371
function customLittleTail() {
372-
let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效\n(换行请使用 \\n 例如:我是第一行~\\n我是第二行~', GM_getValue('menu_customLittleTail'));
372+
let newLittleTail = prompt('编辑 [自定义小尾巴内容],刷新网页后生效(换行请使用 \\n\n提示①:记得在小尾巴前面加上几个 \\n 换行,用来分隔开回帖内容~\n提示②:建议使用 [align=right] 标签来使小尾巴居右~\n提示③:支持论坛富文本标签(建议先找个回复编辑预览好~\n示例:\\n\\n\\n\\n[align=right]第一行内容~\\n第二行内容~[/align]', GM_getValue('menu_customLittleTail'));
373373
if (newLittleTail === '') {
374374
GM_setValue('menu_customLittleTail', []);
375375
registerMenuCommand(); // 重新注册脚本菜单
@@ -385,17 +385,29 @@
385385
if (!menu_value('menu_customLittleTail')) return
386386
switch(type) {
387387
case 'forum': // 各版块帖子列表的预览帖子
388-
littleTail_1();
388+
littleTail_0(); // 预览帖子 快速回复(底部)
389+
littleTail_1(); // 预览帖子 回复(悬浮)
389390
break;
390391
case 'thread': // 帖子内
391-
littleTail_1();
392-
littleTail_2();
392+
littleTail_1(); // 快速回复(悬浮)
393+
littleTail_2(); // 回复框(底部)
393394
break;
394395
case 'reply': // 高级回复
395396
littleTail_3();
396397
break;
397398
}
398399

400+
function littleTail_0() {
401+
let vfastpost = e => {
402+
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="vfastpost"') > -1) {
403+
let message = e.target.querySelector('input[name="message"]'), id = message.id.match(/\d+/g)[0];
404+
message.parentNode.innerHTML = `<textarea type="text" name="message" id="vmessage_${id}" style="width: 99.8%;height: 30px;border: none;outline: none;font-size: 14px;overflow-y: hidden;"></textarea>`
405+
document.getElementById(`vreplysubmit_${id}`).onclick = function(){document.getElementById(`vmessage_${id}`).value += GM_getValue('menu_customLittleTail').replaceAll('\\n', '\n');}
406+
}
407+
}
408+
document.addEventListener('DOMNodeInserted', vfastpost); // 监听插入事件
409+
}
410+
399411
function littleTail_1() {
400412
let floatlayout_reply = e => {
401413
if (e.target.innerHTML && e.target.innerHTML.indexOf('id="floatlayout_reply"') > -1) {

0 commit comments

Comments
 (0)