您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add "Download count" under each entry on the page
// ==UserScript== // @name BepisDB download counts // @namespace http://tampermonkey.net/ // @version 0.2 // @description Add "Download count" under each entry on the page // @author drowned // @match https://db.bepis.moe/* // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; // Function to set text color based on the year function setColorByYear(year, element) { const yearNum = parseInt(year, 10); if (yearNum >= 2023) { element.style.color = '#7CFC00'; } else if (yearNum === 2022) { element.style.color = '#FFFF00'; } else if (yearNum === 2021) { element.style.color = '#FFA500'; } else if (yearNum <= 2020) { element.style.color = '#FF0000'; } } // Select all card blocks on the page const cardBlocks = document.querySelectorAll('.card-block'); // Regular expressions to match "Download count: #" and "Uploaded on: date" const downloadCountRegex = /Download count: ([\d,]+)/; const uploadedOnRegex = /Uploaded on ([\d/]+) [\d:]+[apmAPM]+/; // Iterate over each card block cardBlocks.forEach(block => { const hoverContainer = block.querySelector('.hover-container'); if (hoverContainer) { const pictureElement = hoverContainer.querySelector('picture'); if (pictureElement) { const titleText = pictureElement.getAttribute('title'); const downloadCountMatch = titleText.match(downloadCountRegex); const uploadedOnMatch = titleText.match(uploadedOnRegex); if (downloadCountMatch || uploadedOnMatch) { // Create and append the download count and upload date text const infoElement = document.createElement('div'); infoElement.style.position = 'relative'; infoElement.style.top = '-10px'; // Adjust this value to position the text closer or farther from the thumbnail const infoTextElement = document.createElement('p'); infoTextElement.style.margin = '0'; // Reduce margin to bring text closer infoTextElement.style.backgroundColor = 'black'; // Set background color to black let year = ''; if (uploadedOnMatch) { year = uploadedOnMatch[1].split('/')[2]; // Extract the year infoTextElement.textContent += uploadedOnMatch[1]; // Only the date } if (downloadCountMatch) { infoTextElement.textContent += ' - ' + downloadCountMatch[1]; // Only the number } setColorByYear(year, infoTextElement); // Set color based on the year infoElement.appendChild(infoTextElement); block.appendChild(infoElement); } } } }); })();