您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Disable annoying dynamic updates to page titles and improve them overall.
当前为
// ==UserScript== // @name GOG: Static and Better Page Titles // @namespace Violentmonkey Scripts // @match https://www.gog.com/* // @grant none // @version 1.0 // @author GreasyBastard // @license AGPLv3 // @description Disable annoying dynamic updates to page titles and improve them overall. // ==/UserScript== (function() { 'use strict'; // Function to set the title based on og:title meta tag const setTitleFromMetaTag = () => { const metaTag = document.querySelector('meta[property="og:title"]'); if (metaTag && metaTag.content) { document.title = metaTag.content; } }; // Function to set the title based on the query parameter const setTitleFromQueryParam = () => { const urlParams = new URLSearchParams(window.location.search); const queryTerm = urlParams.get('query'); if (queryTerm) { document.title = `> ${decodeURIComponent(queryTerm)}`; } }; // Function to set the title from the first h1 tag for non-game paths const setTitleFromFirstH1 = () => { const pathPart = window.location.pathname.split('/')[3]; // Extract the 3rd part of the URL path if (pathPart && pathPart !== 'game' && pathPart !== 'games') { const firstH1 = document.querySelector('h1'); if (firstH1) { document.title = firstH1.textContent.trim(); } } }; // Function to set the title to "GOG.com" for homepage or /en/ root const setTitleForHomepage = () => { const pathParts = window.location.pathname.split('/').filter(part => part.trim() !== ''); console.log('Path Parts:', pathParts); // Debugging output to check the pathname parts if (pathParts.length <= 1) { // This should cover "/" and "/en/" document.title = "GOG.com"; } }; // Function to set the title to the error code for error pages (like /404, /403, etc.) const setTitleForErrorPage = () => { const pathParts = window.location.pathname.split('/').filter(part => part.trim() !== ''); const errorCode = pathParts[pathParts.length - 1]; // The last part of the URL path // Check if the last part of the path is a number (error code like 404, 403, etc.) if (!isNaN(errorCode)) { document.title = `Error ${errorCode}`; } }; // Function to lock the document title const lockTitle = () => { const originalTitle = document.title; Object.defineProperty(document, 'title', { configurable: false, enumerable: true, get: () => originalTitle, set: () => {} }); }; // Initialize setTitleForHomepage(); setTitleFromMetaTag(); setTitleFromQueryParam(); setTitleFromFirstH1(); setTitleForErrorPage(); lockTitle(); })();