您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
A quick toggle for a familiar desktop experience for lemmy.
当前为
// ==UserScript== // @name Ye Olde Lemmy - quickly toggle from Lemmy to mlmym.org/${currentDomain} // @namespace https://github.com/appel/userscripts // @version 0.0.2 // @description A quick toggle for a familiar desktop experience for lemmy. // @author appel // @match *://*.lemmy.ml/* // @match *://*.lemmy.world/* // @match *://*.lemm.ee/* // @match *://*.sh.itjust.works/* // @match *://*.beehaw.org/* // @match *://mlmym.org/* // @grant none // @license MIT // ==/UserScript== (function () { "use strict"; // Check if the script is running in an iframe or not if (window.self !== window.top) { return; // Return if inside an iframe } // MutationObserver watches for changes in the document let observer = new MutationObserver(function () { if (document.querySelector(".toggle-switch")) { return; } const url = window.location.href; const domainMatch = url.match(/https?:\/\/([^\/]+)\//); const currentDomain = domainMatch ? domainMatch[1] : null; let btnColor, btnText, btnTitle, newUrl; if (currentDomain && currentDomain.includes('mlmym.org')) { const instance = url.match(/https:\/\/mlmym.org\/([^\/]+)\//)[1]; btnColor = "#333"; btnText = "L"; btnTitle = "Back to Lemmy Instance"; newUrl = `https://${instance}/`; } else if (currentDomain) { btnColor = "#ff6c60"; btnText = "M"; btnTitle = "Switch to mlmym.org/${currentDomain}"; newUrl = `https://mlmym.org/${currentDomain}/`; } if (!newUrl) { return; } // Create button let btn = document.createElement("button"); btn.classList.add("toggle-switch"); btn.textContent = btnText; btn.title = btnTitle; btn.style.position = "fixed"; btn.style.top = "46px"; btn.style.right = "10px"; btn.style.zIndex = "9999"; btn.style.backgroundColor = btnColor; btn.style.color = "white"; btn.style.borderRadius = "50%"; btn.style.width = "24px"; btn.style.height = "24px"; btn.style.border = "none"; btn.style.cursor = "pointer"; btn.style.fontFamily = "-apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif"; btn.style.fontSize = "14px"; btn.style.fontWeight = "700"; btn.style.textAlign = "center"; btn.style.padding = "0"; btn.style.lineHeight = "24px"; btn.style.transition = "transform .15s ease"; // Add button to page document.body.appendChild(btn); btn.addEventListener("click", function () { // Add "pop" animation this.style.transform = "scale(1.2)"; setTimeout(() => (this.style.transform = "scale(1)"), 150); window.location.href = newUrl; }); }); observer.observe(document, { childList: true, subtree: true }); })();