吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1929|回复: 18
收起左侧

[其他原创] 油猴脚本显示悬赏区第一页楼层顺序

  [复制链接]
T4DNA 发表于 2023-12-21 11:46
本帖最后由 T4DNA 于 2023-12-22 23:00 编辑

一个简单的油猴脚本,用于显示已经采纳后的悬赏区帖子第一页顺序(仅表示第一页的先后顺序)。
根据悬赏区精神

楼主在符合帖子条件的回帖中应该按照时间先后顺序采纳

由于Discuz!特性

悬赏区楼主采纳最佳答案之后,所采纳的回帖会自动更改回帖时间(改为与主题帖发帖时间一致)从而置顶为沙发。

每个回帖的pid还是不变的,pid值越小表明该帖回复的时间越早,可通过对比pid值确定回帖先后顺序。

为方便大家判断楼层先后顺序,故写此脚本,按照pid赋予第一页面顺序

Greasy Fork安装地址:https://greasyfork.org/zh-CN/scripts/482795

源码如下:

// ==UserScript==
// @name         吾爱破解悬赏楼层显示
// @namespace    http://tampermonkey.net/
// @version      2023-12-22.2
// @description  吾爱破解悬赏区,被采纳的帖子第一页将显示该页面顺序楼层
// @author       T4DNA
// @match        https://www.52pojie.cn/thread-*-*-*.html
// @match        https://www.52pojie.cn/forum.php?mod=viewthread&tid=*
// @icon         https://www.52pojie.cn/favicon.ico
// @grant        none
// @license      MIT
// @downloadURL https://update.greasyfork.org/scripts/482795/%E5%90%BE%E7%88%B1%E7%A0%B4%E8%A7%A3%E6%82%AC%E8%B5%8F%E6%A5%BC%E5%B1%82%E6%98%BE%E7%A4%BA.user.js
// @updateURL https://update.greasyfork.org/scripts/482795/%E5%90%BE%E7%88%B1%E7%A0%B4%E8%A7%A3%E6%82%AC%E8%B5%8F%E6%A5%BC%E5%B1%82%E6%98%BE%E7%A4%BA.meta.js
// ==/UserScript==

(function() {
    'use strict';
    var bestAnswer;
    function addIndex(docT, index){
        const piDiv = docT.getElementsByClassName('pi')[1];
        const aElement = piDiv.getElementsByTagName('a')[0];
        const spanElement = document.createElement('span');
        spanElement.style.color = 'red';
        spanElement.style.fontWeight = 'bold';
        var textContent = '原楼层:第'+index+'楼  '
        if (index=="10" && bestAnswer==docT){
            textContent = '原楼层:10楼(或第一页以后)  '
        }
        if (index>"10"){
            textContent = '原楼层大于10楼不在第一页  '
        }
        spanElement.textContent = textContent;
        aElement.insertBefore(spanElement, aElement.firstChild);
    };
    function getALLTABLE(){
        let tables = document.querySelectorAll('.plhin');
        tables = Array.from(tables).slice(1);
        bestAnswer = tables[0];
        let tablesWithIDNumbers = tables.map(table => {
            const tableID = table.id || "";
            const match = tableID.match(/pid(\d+)/);
            return {
                element: table,
                idNumber: match ? parseInt(match[1], 10) : null
            };
        });
        tablesWithIDNumbers = tablesWithIDNumbers.filter(item => item.idNumber !== null);
        tablesWithIDNumbers.sort((a, b) => a.idNumber - b.idNumber);
        return tablesWithIDNumbers
    };
    const parentDiv = document.querySelector('.rwd.cl');
    if (parentDiv) {
        const childDiv = parentDiv.querySelector('div');
        if (childDiv && childDiv.classList.contains('rusld')) {
            console.log('未完结悬赏');
        } else if (childDiv && childDiv.classList.contains('rsld')) {
            console.log('已完结悬赏');
            let newtables = getALLTABLE();
            newtables.forEach((item, index) => {
                addIndex(item.element, index + 2);
            });
        }
    }
})();

效果如下:
Snipaste_2023-12-21_11-45-33.png

免费评分

参与人数 7威望 +1 吾爱币 +36 热心值 +6 收起 理由
RS水果 + 10 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
InternetDog + 2 + 1 要是管理能把这个东西添加到论坛代码里就好了
zhenjinren520 + 1 + 1 我很赞同!
勇者为王 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
dengbin + 1 我很赞同!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
helh0275 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

RS水果 发表于 2023-12-22 12:09
使用2023-12-21.1版本有2个问题,反馈一下

1. 论坛里大多数人都默认主题帖为1楼, 所以在回帖中,不在应该计算1楼楼层,最小回帖应该是2楼




2. 在悬赏贴 https://www.52pojie.cn/thread-1754126-1-1.html  中, 最佳答案是第九楼,由于计算问题, 你没有显示第九楼, 而且第十楼原生楼层显示有些问题



正确的结果应该是:



如果最佳答案位于原楼层10楼或者10楼以后, 显示应该是:



RS水果 发表于 2023-12-22 17:57
当悬赏页存在置顶回复的时候, 楼层判断出现异常

测试地址: https://www.52pojie.cn/thread-1863492-1-1.html

当前显示:



应当显示:



素蝶 发表于 2023-12-21 12:55
少污污 发表于 2023-12-21 13:41
懂编程的大能就是牛逼,可以为所欲为,想干嘛干嘛
Hmily 发表于 2023-12-21 14:18
@Ryan_XQ 追加到你那置顶的帖子里,做好联动。
dengbin 发表于 2023-12-21 14:25
非常好,看到这种帖子我觉得很有必要置顶一下
chai233202 发表于 2023-12-21 16:35
会编程的是真厉害,只要想到什么,都能用代码来实现
 楼主| T4DNA 发表于 2023-12-22 12:19
RS水果 发表于 2023-12-22 12:09
使用2023-12-21.1版本有2个问题,反馈一下

1. 论坛里大多数人都默认主题帖为1楼, 所以在回帖中,不在应该 ...

已更新,请检查一下是否正确

点评

已使用新版2023-12-21.2 在第十楼的描述还存在一些问题  详情 回复 发表于 2023-12-22 12:28
RS水果 发表于 2023-12-22 12:28
T4DNA 发表于 2023-12-22 12:19
已更新,请检查一下是否正确

已使用新版2023-12-21.2

在第十楼的描述还存在一些问题

 楼主| T4DNA 发表于 2023-12-22 12:36
RS水果 发表于 2023-12-22 12:28
已使用新版2023-12-21.2

在第十楼的描述还存在一些问题

已更新,仅最佳答案显示10楼或以后

点评

是的, 已经OK了  详情 回复 发表于 2023-12-22 13:06
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 16:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表