Changes Reddit links to old.reddit.com directly in the DOM, preventing redirects.
// ==UserScript==
// @name Replace Reddit Links with Old Reddit
// @namespace https://greasyfork.org/en/users/1396030-99xpotions
// @match *://*/*
// @grant none
// @version 1.0.1
// @author 99xPotions
// @license MIT
// @description Changes Reddit links to old.reddit.com directly in the DOM, preventing redirects.
// ==/UserScript==
(function() {
'use strict';
function replaceRedditLinks() {
const links = document.querySelectorAll('a[href*="reddit.com"]');
links.forEach(link => {
try {
const url = new URL(link.href);
if (url.hostname === 'www.reddit.com' || url.hostname === 'reddit.com') {
url.hostname = 'old.reddit.com';
link.href = url.href;
}
} catch (e) {
}
});
}
replaceRedditLinks();
const observer = new MutationObserver(function(mutations) {
let newNodesAdded = false;
for (let i = 0; i < mutations.length; i++) {
if (mutations[i].addedNodes.length > 0) {
newNodesAdded = true;
break;
}
}
if (newNodesAdded) {
replaceRedditLinks();
}
});
observer.observe(document.body, {
childList: true,
subtree: true
});
})();