Greasy Fork is available in English.
Button to toggle between Twitter and a custom domain
当前为
// ==UserScript==
// @name NiTwit
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Button to toggle between Twitter and a custom domain
// @author You
// @match *://*.twitter.com/*
// @grant GM_getValue
// @grant GM_setValue
// @license MIT
// ==/UserScript==
(function() {
'use strict';
let alternateDomain = GM_getValue('alternateDomain');
// If no alternate domain has been set, prompt the user to input one, default is 'nitter.net'
if (!alternateDomain) {
alternateDomain = prompt('Please enter the alternate domain you want to switch to from twitter.com:', 'nitter.net');
// If the user provides an alternate domain, save it
if (alternateDomain) {
GM_setValue('alternateDomain', alternateDomain);
}
}
// Add the match rule for the alternate domain
if (alternateDomain) {
GM_info.scriptHandler.addMetaRule({name: '@match', value: `*://*.${alternateDomain}/*`});
}
const url = window.location.href;
let newUrl = '';
// Create button
let btn = document.createElement('button');
btn.classList.add('toggle');
btn.textContent = 'Switch';
btn.style.position = 'fixed';
btn.style.top = '0';
btn.style.right = '0';
btn.style.zIndex = '9999';
// Add button to page
document.body.appendChild(btn);
btn.addEventListener('click', function(){
if (url.includes('twitter.com')) {
newUrl = url.replace('twitter.com', alternateDomain);
} else if (url.includes(alternateDomain)) {
newUrl = url.replace(alternateDomain, 'twitter.com');
}
window.location.href = newUrl;
});
})();