您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
See approximate "scorable follower count", which is the count that's used in site top
当前为
// ==UserScript== // @name Scorable follower count [neocities.org] // @namespace http://tampermonkey.net/ // @version 1.0.0 // @description See approximate "scorable follower count", which is the count that's used in site top // @author https://neocities.org/site/dimden // @match https://neocities.org/site/* // @icon https://www.google.com/s2/favicons?sz=64&domain=neocities.org // @grant none // @run-at document-end // @license MIT // ==/UserScript== (async () => { let style = document.createElement('style'); style.innerHTML = `.col.col-50.profile-info { width: 64% !important }`; document.head.append(style); let site = location.pathname.split('/').slice(-1)[0]; async function getFollowings() { const followerPage = await fetch(`https://neocities.org/site/${site}/follows`).then(res => res.text()); try { const parser = new DOMParser(); const doc = parser.parseFromString(followerPage, "text/html"); return Array.from(doc.querySelectorAll('.username > a')).map(u => u.innerText.replace(/\n/g, '').trim()).filter(u => !u.includes('/')); } catch(e) { console.error('error getting follows', e); console.log(followerPage); } return []; } let followings = (await getFollowings()).length; let followers = parseInt(document.getElementsByClassName('stats')[0].children[1].children[0].innerText.replace(/,/g, '')); let stats = document.getElementsByClassName('stats')[0]; let div = document.createElement('div'); div.className = 'stat'; div.innerHTML = ` <strong>${followers - followings}</strong> <span>Score</span> `; document.getElementsByClassName('stats')[0].children[1].after(div); })();