all_link_to_new_tab

make all link open in new tab

Version au 01/06/2021. Voir la dernière version.

Auteur
x94fujo6rpg
Notes
0 0 0
Version
0.02
Créé
01/06/2021
Mis à jour
01/06/2021
Taille
1,26 ko
Licence
N/A
S'applique à
Tous les sites

// ==UserScript==
// @name all_link_to_new_tab
// @namespace https://github.com/x94fujo6rpg/SomeTampermonkeyScripts
// @updateURL https://github.com/x94fujo6rpg/SomeTampermonkeyScripts/raw/master/all_link_to_new_tab.user.js
// @downloadURL https://github.com/x94fujo6rpg/SomeTampermonkeyScripts/raw/master/all_link_to_new_tab.user.js
// @version 0.02
// @description make all link open in new tab
// @author x94fujo6
// @match *://*/*
// @grant none
// @run-at document-body
// ==/UserScript==
/* jshint esversion: 9 */

(function () {
'use strict';
console.log("script start");
const
linkReg = /^(https|http):\/\/.+/,
openLink = (link) => window.open(link, "_blank", "noreferrer"),
setOnclick = () => {
let links = document.querySelectorAll("[href]");
if (links) {
links.forEach(link => {
if (!link.href.match(linkReg)) return;
link.onclick = function (event) {
openLink(link.href);
event.preventDefault();
};
});
} else {
setTimeout(setOnclick, 500);
}
},
setQueue = (max = 3) => {
for (let i = 0; i < max; i++) {
setTimeout(setOnclick, 1000 * i);
}
},
ob = new MutationObserver(setQueue);
setQueue();
ob.observe(document.body, { childList: true, });
})();