您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
remove oo.pe redirection in Arca.live
当前为
// ==UserScript== // @name oo.pe redirection remover // @name:ko oo.pe 리디렉션 제거기 // @namespace OOPE_REMOVER_V1 // @match https://arca.live/b/* // @run-at document-end // @version 1.23 // @author Laria // @description remove oo.pe redirection in Arca.live // @description:ko 아카라이브 oo.pe 리디렉션을 제거합니다. // @supportURL http://greasyfork.icu/scripts/485591 // @icon https://www.google.com/s2/favicons?sz=64&domain=oo.pe // @license MIT // @encoding utf-8 // ==/UserScript== /* * Note: Please install with greasyfork, it will update automatically.. * * More info. http://greasyfork.icu/scripts/485591 * */ /* * == Change log == * 1.0 - release * 1.1 - add retry * 1.2 - detect comment reload * 1.21 - apply link's description * 1.22 - check article comment before register event listner, retry 7 -> 10 * 1.23 - add site:unsafelink(unsafelink.com) */ //root (function() { 'use strict'; //target list const targetList = [ 'oo.pe', 'unsafelink.com', //added in 1.23 ]; function resolveLink(tar = document) { function _resolveLink(_container, _link) { function _res(_tar) { //tokenizing const token = _tar.split('/'); //search oo.pe prefix const pref = token.indexOf(_link); //join link after prefix return token.slice(pref + 1).join('/'); } //search link include 'oo.pe' _container.querySelectorAll(`a[href*="${_link}"]`).forEach(function(src) { try { src.title = _res(src.title); src.href = _res(src.href); } catch (_) {} }); } //try to resolve registered link targetList.forEach((_tarLink)=>{_resolveLink(tar, _tarLink);}); } //try entire resolveLink(); //repeat resolve and add event listner setTimeout(() => { resolveLink(); }, 50); setTimeout(() => { resolveLink(); if(document.querySelector('.article-comment')) { //resolve link when comment reload document.querySelector('.article-comment').querySelector('.newcomment-alert').addEventListener('click', (event) => { event.preventDefault(); //try to resole while server connection pending (1000ms) for (let i = 1; i <= 10; i++) { setTimeout(function() { resolveLink(document.querySelector('.article-comment')); }, 100 * i); } }); } }, 200); })();