您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
redirect to the real URL directly when clicking on a link that contains a redirect URL
当前为
// ==UserScript== // @name External Link Auto Redirect // @name:zh-CN 外链自动重定向 // @namespace http://tampermonkey.net/ // @version 0.3 // @description redirect to the real URL directly when clicking on a link that contains a redirect URL // @description:zh-CN 点击包含重定向 URL 的链接时,直接重定向到真实的 URL // @author uiliugang // @run-at document-start // @match *://*/* // @license MIT // ==/UserScript== (function() { 'use strict'; const redirectRegex = /[?&#](target|to|ac=2&url|url|remoteUrl|redirect|u|goto|link)=([^&]+)/i; document.addEventListener('click', function(e) { // 检查点击的元素是否具有 href 属性 if (e.target && e.target.href) { const url = e.target.href; const processedUrl = processUrl(url); if (processedUrl) { e.preventDefault(); window.open(processedUrl, '_blank'); } } // 如果点击的元素没有 href 属性,则检查其父元素 else if (e.target.parentElement && e.target.parentElement.href) { const url = e.target.parentElement.href; const processedUrl = processUrl(url); if (processedUrl) { e.preventDefault(); window.open(processedUrl, '_blank'); } } // 如果点击的元素或其父元素都没有 href 属性,则检查其祖先元素 else if (e.target.parentElement && e.target.parentElement.parentElement && e.target.parentElement.parentElement.href) { const url = e.target.parentElement.parentElement.href; const processedUrl = processUrl(url); if (processedUrl) { e.preventDefault(); window.open(processedUrl, '_blank'); } } // 调试打印信息 // console.log(`Original URL: ${url}`); // console.log(`Processed URL: ${processedUrl}`); }); function processUrl(redirectURL) { const matches = redirectURL.match(redirectRegex); console.log(`Matches: ${matches}`); if (matches && matches[2]) { return decodeURIComponent(matches[2]); } return null; } })();