您的位置: 首页 / Experiences / GreaseMonkey: 让 Yahoo! 搜索结果使用真实地址

GreaseMonkey: 让 Yahoo! 搜索结果使用真实地址

Published at Aug 21, 11pm / Keywords: , , ,

2007-8-21-1

我原以为这年头大家都 Google 百度了,看来用 Yahoo! 搜索的还是大有人在。虽然我自己很少使用,但今天小敖通过 Gmail 向我求助,希望实现这样的功能:

Yahoo! 英文搜索的搜索结果页面中,链接全部为 Yahoo! 的统计/跟踪地址,而不像 Google 搜索那样使用原始地址。这给平时使用(例如我们常用的右键点击“复制链接地址”)造成了不便。希望能有一款插件将这个地址替换为原始地址。

很显然,干“篡改”网页这种事,强大的 GreaseMonkey 再合适不过了。于是花了 20 分钟写了这个简短的脚本,实现了这个功能。如果您有同样的需要的话,可以通过这个链接下载。别忘了先装 Firefox 和 GreaseMonkey 啊。

事实上,所有搜索引擎都会跟踪用户的点击,Google 也不例外。只是 Google 采用比 Yahoo! 聪明一点的方式,先拦截你的 onmousedown 事件,改变 location.href 后再 return false。这样原来 href 中的链接就不起作用了,实际访问的还是带有追踪脚本的链接。搜索引擎统计用户点击可以收集用户数据,从而分析用户行为,有利于生成更准确的搜索结果。

当然,我在设计这个脚本时也考虑过使用 Google 这种方式,使用 onmousedown 事件访问带有统计的链接。但是我发现使用 addEventListener 方法,即使我的函数最后 return false; 原有的链接还是有效。不知道有什么好方法可以将它屏蔽掉,还希望这方面的高手指点一下。

[tags]firefox, yahoo, greasemonkey, javascript[/tags]
发表您的观点或推荐本文 Loading...