4

我正在使用 Greasemonkey 将某些 URL 重定向到另一个 URL,但我想在要重定向的 URL 加载之前进行重定向。

目前我正在使用这个简单的脚本:

//==UserScript==
// @name Redirect Google
// @description Redirect Google to Yahoo!
// @include http://*.google.com/*
//==/UserScript==
window.location.replace("http://www.yahoo.com")

在上面,谷歌出现了一秒钟,然后被重定向到谷歌。我想马上去雅虎。有可能吗,怎么做?

4

3 回答 3

8

您可以@run-at document-start在元数据块Doc中使用。
例如:

//==UserScript==
// @name Redirect Google
// @description Redirect Google to Yahoo!
// @include http://*.google.com/*
// @run-at document-start
//==/UserScript==
window.location.replace ("http://www.yahoo.com")


该脚本将在任何文档开始加载之前运行,因此在任何脚本运行或图像加载之前。

于 2012-05-19T03:48:11.373 回答
2

Greasemonkey 不是立即重定向的正确工具。(你这样做是出于诚实的目的,对吧?)

由于您似乎可以访问受害者的计算机,因此最简单的方法是更改​​ hosts 文件

(1) 使用这些值添加两个条目/行(Windows 语法):

74.6.117.48 google.com
74.6.117.48 www.google.com

(2) 重启浏览器。对于 IE,您可能还需要刷新 DNS 缓存(ipconfig /flushdns在命令提示符下)。

(3) 卸载或禁用该 GM 脚本。

(4) 谷歌现在将被重定向到雅虎搜索。


或者,您可以编写浏览器扩展/附加组件。但如果这是为了合法、非恶作剧使用;最好、最简单、最灵活(和诚实)的方法是让 Greasemonkey 脚本保持原样。

于 2010-12-23T02:19:19.377 回答
2

Firefox的Redirector插件是您应该在 Firefox 中用于用户定义的重定向而不是 Greasemonkey。

于 2011-01-05T17:49:13.077 回答