您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
在SteamDB链接上按1键快速跳转到Steam商店
// ==UserScript== // @name SteamDB quick jump to Steam // @name:zh-CN SteamDB 快速跳转至 Steam // @namespace http://tampermonkey.net/ // @version 1.1 // @description Press 1 to jump to Steam // @description:zh-CN 在SteamDB链接上按1键快速跳转到Steam商店 // @author BW // @match https://steamdb.info/* // @grant GM_openInTab // @license MIT // ==/UserScript== (function() { 'use strict'; let currentHoveredLink = null; document.addEventListener('mouseover', function(event) { const target = event.target; if (target.classList.contains('ais-Highlight-nonHighlighted') || target.classList.contains('ais-Highlight')) { currentHoveredLink = null; let currentElement = target.parentElement; while (currentElement && currentElement !== document.body) { if (currentElement.tagName === 'A' && currentElement.href && currentElement.href.includes('/app/')) { const match = currentElement.href.match(/\/app\/(\d+)(?:\/.*)?/); if (match) { currentHoveredLink = { element: currentElement, appId: match[1] }; return; } } const linkInElement = currentElement.querySelector('a[href*="/app/"]'); if (linkInElement) { const match = linkInElement.href.match(/\/app\/(\d+)(?:\/.*)?/); if (match) { currentHoveredLink = { element: linkInElement, appId: match[1] }; return; } } currentElement = currentElement.parentElement; } } if (target.tagName === 'TD') { currentHoveredLink = null; const linkInTd = target.querySelector('a[href*="/app/"]'); if (linkInTd) { const match = linkInTd.href.match(/\/app\/(\d+)(?:\/.*)?/); if (match) { currentHoveredLink = { element: linkInTd, appId: match[1] }; return; } } } const linkElement = target.closest('a[href*="/app/"]'); if (linkElement && linkElement.href) { currentHoveredLink = null; const match = linkElement.href.match(/\/app\/(\d+)(?:\/.*)?/); if (match) { currentHoveredLink = { element: linkElement, appId: match[1] }; } } }); document.addEventListener('mouseout', function(event) { const target = event.target; const linkElement = target.closest('a[href*="/app/"]'); if (currentHoveredLink && linkElement === currentHoveredLink.element) { const relatedTarget = event.relatedTarget; if (!relatedTarget || !currentHoveredLink.element.contains(relatedTarget)) { currentHoveredLink = null; } } }); document.addEventListener('keydown', function(event) { if (event.key === '1') { if (currentHoveredLink && currentHoveredLink.appId) { const steamStoreUrl = `https://store.steampowered.com/app/${currentHoveredLink.appId}/`; GM_openInTab(steamStoreUrl, { active: false, insert: true, setParent: true }); } } }); })();