stopGoogleRedirection:
http://userscripts.org:8080/scripts/show/186798
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98 |
// ==UserScript==// @name stopGoogleRedirection// @author NLF// @description 禁止google的搜索结果重定向,加快访问速度,防止撞墙(support (opera,firefox(GreaseMonkey),chrome) Latest Stable,IE9+)// @version 1.0.0.5// @created 2013-12-26// @lastUpdated 2013-2-5// @grant none// @run-at document-start// @namespace http://userscripts.org/users/NLF// @homepage http://userscripts.org/scripts/show/186798// @downloadURL https://userscripts.org/scripts/source/186798.user.js// @updateURL https://userscripts.org/scripts/source/186798.meta.js// @include http*// @match *://*/*// ==/UserScript==;(function
() { ‘use strict‘; // 将在真实环境下执行的实际函数。 function
contentScript() { ‘use strict‘; // 匹配应用本脚本的网页 if
(!/^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\//i.test(location.href)) { return; }; var
emptyFn = function
() { }; // 覆盖google处理重定向的函数 if
(typeof
Object.defineProperty == ‘function‘) { Object.defineProperty(window, ‘rwt‘, { configurable: false, enumerable: true, get: function
() { return
emptyFn; }, }); } else
if (typeof
window.__defineGetter__ == ‘function‘) { window.__defineGetter__(‘rwt‘, function
() { return
emptyFn; }); }; }; // 如果发生通信的话,需要一个独一无二的ID var
messageID = Math.random().toString(); // 把指定函数丢到真实环境中执行,规避一切脚本管理器乱七八糟的执行环境产生的奇葩Bug, // 特别是chrome上的那个坑爹tampermonkey。。。 function
runInPageContext(fn) { if
(typeof
fn !== ‘function‘) { return; }; // 创建一个脚本插入到pageContext执行 var
script = document.createElement(‘script‘); script.type = ‘text/javascript‘; // 去掉函数名,防止污染全局环境。 var
sContent = ‘;(‘
+ fn.toString().replace(/[^(]+/, ‘function ‘) + ‘)(‘
+ JSON.stringify(messageID) + ‘);‘; // console.log(‘执行的脚本实际内容\n‘, sContent); script.textContent = sContent; // 检测html元素是否可访问 // scriptish @run-at document-start时,html元素在第一时间不可访问 var
de = document.documentElement; if
(de) { de.appendChild(script); de.removeChild(script); } else
{ new
(window.MutationObserver || window.WebKitMutationObserver)(function
(ms, observer) { var
de = document.documentElement; if
(de) { // console.log(de.outerHTML); observer.disconnect(); de.appendChild(script); de.removeChild(script); }; }).observe(document, { childList: true, }); }; }; runInPageContext(contentScript);})(); |
userscripts.org最新网址,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/kind064100611/p/3764073.html