您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Append ?sort=old to all /comments/ links, waiting for feed to load
// ==UserScript== // @name Reddit Sort Comments by old // @version 1.3 // @description Append ?sort=old to all /comments/ links, waiting for feed to load // @author Rayman30 // @license MIT // @match https://www.reddit.com/* // @grant none // @run-at document-end // @namespace https://github.com/rayman1972 // ==/UserScript== (function() { 'use strict'; /** * Rewrites all comment links so that, if they don't have a "sort" param, * we add "?sort=old". */ function rewriteCommentLinks() { // Grab all anchor tags whose href includes "/comments/" const anchors = document.querySelectorAll('a[href*="/comments/"]'); anchors.forEach(a => { try { const url = new URL(a.href); // If no sort param, set it to "old" if (!url.searchParams.has('sort')) { url.searchParams.set('sort', 'old'); a.href = url.toString(); } } catch (err) { // Ignore any invalid URLs } }); console.log('[Reddit Sort=old] Rewrote comment links.'); } /** * Initialize: * 1) Wait for window load to ensure initial feed is done. * 2) Rewrites links once. * 3) Sets a MutationObserver to catch newly inserted links (infinite scroll). */ function init() { // First, rewrite links once on the "window.load" event window.addEventListener('load', () => { console.log('[Reddit Sort=old] Window load event fired. Rewriting links...'); rewriteCommentLinks(); }); // Then keep an eye out for new content (infinite scrolling) const observer = new MutationObserver(() => { rewriteCommentLinks(); }); observer.observe(document.body, { childList: true, subtree: true }); } // Start init(); })();