StayCached

Keeps you in Google cache when you click links on cached pages.

目前為 2015-10-18 提交的版本,檢視 最新版本

// ==UserScript==
// @name           StayCached
// @name:pl        StayCached
// @namespace      mailto:[email protected]
// @author         Szop Gracz
// @description    Keeps you in Google cache when you click links on cached pages.
// @description:pl Po kliknięciu odnośnika na kopii strony od Google, przenosi do kopii strony docelowej a nie do oryginału.
// @match          *://webcache.googleusercontent.com/*
// @version        1.2
// ==/UserScript==


const enabled_protocols = ['http','https','ftp','ftps'];

const cache_header = document.getElementById('google-cache-hdr');

document.body.addEventListener('click',
	function(e)
	{
		var target = e.target || e.srcElement;
		if ( !target || cache_header.contains(target) ) return;
		while ( !target.href && target.parentNode )
			target = target.parentNode;
		if ( target.href )
		{
			const target_protocol = target.href.substr(0,target.href.search(':'));
			if ( enabled_protocols.indexOf(target_protocol)>=0 && !target.href.match('^http://webcache.googleusercontent.com/') && !target.href.match('^https://webcache.googleusercontent.com/') )
				target.href = location.protocol + '//webcache.googleusercontent.com/search?q=cache:' + target.href.replace(/\+/g, '%2B');
		}
	}
);