If the Steam Store App or Sub doesn't exist, is removed or is region-locked, redirect to SteamDB.info instead of store.steampowered.com.
当前为
// ==UserScript==
// @name Steam Store - Removed App/Sub Redirect To SteamDB
// @namespace Royalgamer06
// @version 0.5
// @description If the Steam Store App or Sub doesn't exist, is removed or is region-locked, redirect to SteamDB.info instead of store.steampowered.com.
// @author Royalgamer06
// @include *
// @exclude file:*
// @run-at document-idle
// @connect store.steampowered.com
// @grant GM_xmlhttpRequest
// @grant unsafeWindow
// ==/UserScript==
if (/^https?:\/\/store\.steampowered.com\/(app|sub)\/.+$/.test(location.href)) {
if (document.getElementById("error_box")) location.href = location.href.replace("store.steampowered.com", "steamdb.info");
}
var elems = document.querySelectorAll("a[href*='://store.steampowered.com/app/'], a[href*='://store.steampowered.com/sub/']");
for (var i = 0; i < elems.length; i++) {
eles[i].addEventListener("click", function(ev) {
ev.preventDefault();
var linkElem = ev.target;
var w = linkElem.target ? unsafeWindow.open(linkElem.href, linkElem.target) : unsafeWindow.open(linkElem.href, "_self");
GM_xmlhttpRequest({
method: "HEAD",
url: linkElem.href,
onload: function(response) {
if (/^https?:\/\/store\.steampowered.com\/?$/.test(response.finalUrl)) {
w.location.href = linkElem.href.replace("store.steampowered.com", "steamdb.info");
}
}
});
});
}