您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
让所有网页链接都在新标签页中打开,提升浏览效率。
当前为
// ==UserScript== // @name Force Link Open in New // @name:zh-CN 强制链接在新页打开 // @namespace http://tampermonkey.net/ // @version 0.1 // @description Opens all web links in new tabs, enhancing browsing efficiency and preventing loss of work progress. // @description:zh-CN 让所有网页链接都在新标签页中打开,提升浏览效率。 // @author Yearly // @license AGPL-v3.0 // @match *://*/* // @grant none // ==/UserScript== (function() { 'use strict'; // Capture all click events and open links in a new tab document.addEventListener('click', function(event) { let anchor = event.target.closest('a'); if (anchor && anchor.href) { event.preventDefault(); window.open(anchor.href, '_blank'); } }, true); // Capture all form submit events and open the form's action URL in a new tab document.addEventListener('submit', function(event) { event.preventDefault(); let form = event.target; if (form && form.action) { window.open(form.action, '_blank'); } }, true); // Override window.open method to open URLs in a new tab const originalOpen = window.open; window.open = function(url, target = '_blank', features) { if (['_self', '_parent', '_top'].includes(target)) { target = '_blank'; } return originalOpen.call(window, url, target, features); }; // Proxy for window.location to intercept direct assignments to href const locationProxy = new Proxy(window.location, { set(target, property, value) { if (property === 'href') { window.open(value, '_blank'); return true; } target[property] = value; return true; } }); // Prevent page reload by listening to beforeunload event window.addEventListener('beforeunload', function(event) { const newUrl = window.location.href; window.open(newUrl, '_blank'); event.preventDefault(); event.returnValue = ''; // Compatibility for some browsers }); })();