Steam Fix RU (Only store.css)

Убирает параметр `l=russian` из URL только для store.css

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         Steam Fix RU (Only store.css)
// @namespace    Steam Fix RU (Only store.css)
// @version      1.1
// @author		Danzo
// @description  Убирает параметр `l=russian` из URL только для store.css
// @match        *://store.steampowered.com/*
// @grant        none
// @run-at       document-start
// ==/UserScript==
 
(function() {
    'use strict';
 
    function removeLanguageParam() {
        // Находим все CSS и JavaScript ресурсы
        document.querySelectorAll('link[rel="stylesheet"], script[src]').forEach(resource => {
            // Определяем нужный атрибут (href для link и src для script)
            const urlAttr = resource.tagName === 'LINK' ? 'href' : 'src';
            
            // Проверяем, что атрибут существует и начинается с 'http'
            if (resource[urlAttr] && resource[urlAttr].startsWith('https://store.fastly.steamstatic.com/public/css/v6/store.css')) {
                try {
                    let url = new URL(resource[urlAttr]);
 
                    // Удаляем параметр l=russian, если он присутствует
                    if (url.searchParams.get('l') === 'russian') {
						// Логируем исходный URL
						// console.log("Detected resource:", url.toString());
						
                        url.searchParams.delete('l');
                        resource[urlAttr] = url.toString();
 
                        // Логируем новый URL после удаления параметра
                        // console.log("Updated resource:", resource[urlAttr]);
                    }
                } catch (e) {
                    console.error("Invalid URL detected:", resource[urlAttr], e);
                }
            }
        });
    }
 
    // Запускаем функцию сразу при загрузке страницы
    removeLanguageParam();
 
    // Используем MutationObserver для обработки новых ресурсов, добавленных динамически
    // const observer = new MutationObserver(removeLanguageParam);
    // observer.observe(document.head || document.documentElement, { childList: true, subtree: true });
})();