Greasy Fork is available in English.

Wayback Machine - toolbar toggler

A way to toggle the WaybackMachine's toolbar


安装此脚本?
// ==UserScript==// @name         Wayback Machine - toolbar toggler// @name:fr      Wayback Machine - (dé)masquer la barre d'outils// @namespace    https://github.com/Procyon-b// @version      0.8// @description  A way to toggle the WaybackMachine's toolbar// @description:fr  Une méthode pour masquer/afficher la barre d'outils de WaybackMachine (web.archive.org)// @author       Achernar// @match        *://web.archive.org/web/*// @grant        none// @run-at       document-start// @noframes// ==/UserScript==(function() {"use strict";function addStyle(e,s) {if (!e) return;var st=document.createElement("style");st.textContent=s;e.appendChild(st);}function fix(ev) {var TO, st, sts = document.getElementsByTagName('style');addStyle( (document.head || document.documentElement), '#wm-ipp-base {opacity:0; min-height:1px;position:absolute;} #wm-ipp-base:hover {opacity: 1;} #wm-ipp-base.forcePriority {oposition:relative; z-index:99999;} body > #wm-ipp-print, body> #donato {display: none;}');// remove this style if presentfor (st of sts) {try{if (st.innerText.search('.wb-autocomplete-suggestions')+1) {st.innerText='';break;}}catch(e){}}// remove all added stylesvar wbSt, del=[];for (let el of document.body.childNodes) {if (el.nodeType==8) {if (!wbSt && (el.data==' BEGIN WAYBACK TOOLBAR INSERT ')) wbSt=true;else if (wbSt && (el.data==' END WAYBACK TOOLBAR INSERT ')) {for (let i=0; i<del.length; i++) del[i].parentNode.removeChild(del[i]);break;}continue;}if (!wbSt) continue;if (el.nodeName=='STYLE') del.push(el);}// remove archive.org stylesheetssts=document.querySelectorAll('link[rel=stylesheet]');for (st of sts) {if (st.href.startsWith('https://web.archive.org/_static/') && !(st.href.search('/iconochive.css')+1) ) {st.parentNode.removeChild(st);}}// change "close" icon colorif (!sr) sr=e.sr;if (sr) {let s='#wm-tb-close .iconochive-remove-circle {color: #26d926 !important;}';try{ addStyle(sr, s);}catch(er){let st=document.createElement('style');st.textContent=s;sr.appendChild(st);}}this.removeEventListener('dblclick', fix);document.body.addEventListener('keydown',function(ev){force=ev.altKey && ev.ctrlKey;if (force && !forceState) {e.classList.add('forcePriority');forceState=force;if (TO) clearTimeout(TO);TO=setTimeout(function(){e.classList.remove('forcePriority');forceState=false;TO=0;},3000);if (sr) {let e = sr.querySelector('[style*="display: none;"]')if (e) e.style.display='';}}});}var e=document.getElementById('wm-ipp-base'), initCnt=100, sr, TO, force=false, forceState=false;var obs = new MutationObserver(function(mutL) {for (let mut of mutL) {let e=mut.addedNodes[0];if (e && (e.id=='wm-ipp-base')) {if (TO) clearTimeout(TO);obs.disconnect();init();}}});//obs.observe(document.documentElement, {attributes: false, subtree: true, childList: true });function init() {e=document.getElementById('wm-ipp-base');if (!e) {if (--initCnt > 0) TO=setTimeout(init, 50);else if (initCnt > -5) TO=setTimeout(init, 3000);return;}obs.disconnect();e.addEventListener('dblclick', fix);let ne=e.nextElementSibling;if (ne && (ne.id=='donato')) ne.parentNode.removeChild(ne);}//init();// catch attachShadowvar s=document.createElement('script');s.textContent=`(function(){var options={attributes: false, subtree: true, childList: true };var obs = new MutationObserver(function(mutL) {for (let mut of mutL) {let e=mut.addedNodes[0];if (e && (e.id=='wm-ipp-base')) {var oldAS=e.attachShadow;e.attachShadow=function(m){e.sr=oldAS.call(e,m);return e.sr;}obs.disconnect();}}});obs.observe(document.documentElement, options);})()`;var injected=0;function inject() {if (injected++) return;var sc=document.documentElement.insertBefore(s,document.head);sc.parentNode.removeChild(sc);}var started=0;function start() {if (started++) return;inject();init();obs.observe(document.documentElement, {attributes: false, subtree: true, childList: true });}tryUntil(inject, 0);tryUntil(function(){obs.observe(document.documentElement, {attributes: false, subtree: true, childList: true });}, 0);function tryUntil(F, TO=150, c=-1, fail) {if (!c--) {fail && fail();return;}try{F();}catch(e){setTimeout(function(){tryUntil(F,TO,c,fail);}, TO)}}if (document.readyState != 'loading') start();else {document.addEventListener('DOMContentLoaded', start);window.addEventListener('load', start);}})();