如何阻止google.com使用Greasemonkey(或Adblock)将光标从URL中移开?

时间:2011-01-26 20:08:32

标签: javascript greasemonkey adblock

如何阻止google.com将光标从网址上移开并将其聚焦在使用Greasemonkey的搜索框上?

我使用谷歌作为我的主页并点击主页按钮打开一个新标签,也许不是最好的方法,但这是习惯。我将开始输入一个URL,当页面完成后,加载Google搜索字段会在我打字完成时将光标拉开。

我知道相当数量的javascript,但我甚至不知道在查看Googles页面源时从哪里开始。如果有人可以为此写一个脚本,我会永远爱你,我相信很多人也会这样做!

编辑:

可能更好的问题是如何使用Adblock Plus做到这一点?

编辑#2:

是否可以在使用firefox插件加载特定页面之前运行javascript?或者,是否可以在加载之前在页面上阻止javascript?

我不是在寻找任何“工作”我正在寻找修复。修复删除或禁用“document.f.q.focus()”。

编辑#3:书签怎么样?这有可能吗?

4 个答案:

答案 0 :(得分:2)

请参阅http://noscript.net/

这是一个firefox插件,禁用网站上的JavaScript。您可以将其配置为仅在google.com上运行,我认为(如果您不希望它干扰其他网站)。

Noscript更安全,但它可能会很痛苦,因为它使用白名单方法。

或者你可以使用YesScript代替黑名单。

回复:"I just want to blacklist a specific line of code on 1 site" ...
没有插件可以做到这一点。您可以使用 NoScript YesScript 来阻止来自网站的所有脚本。或者您可以使用 Adblock 来阻止特定的JS 文件

你不能有选择地阻止嵌入在主页面中的JS的位,除非在极少数情况下GM可以有时围绕它工作。

答案 1 :(得分:1)

这听起来像是试图用铁砧粉碎蚂蚁。或者其他一些更好的,复杂的工具,简单的工作类比。我建议您将主页设置为空白页,或者使用新标签按钮或Ctrl + T打开新标签页。

答案 2 :(得分:1)

我不相信这是可能的,只是环顾四周。焦点实际上来自body元素的onload属性:

onload="document.f.q.focus();if(document.images)new Image().src='/images/srpr/nav_logo27.png'"

如您所见,document.f.q.focus()是您的问题。但是,在onload执行之前,我无法运行GM脚本。但是我对这个特定的问题并不太熟悉:我编写的任何GM脚本都是新奇的,只要在页面加载后就完成了加载顺序并不重要。

如果您知道如何在onload之前(在非常轻松的网页上)运行GM脚本,那么就像说unsafeWindow.document.body.onload = null一样简单。

答案 3 :(得分:0)

你无法使用Greasemonkey执行此操作,因为GM无法操纵chrome元素足以将焦点设置到地址栏。

出于同样的原因,您无法使用Adblock执行此操作,因为Adblock只会停止加载外部元素。

据我所知,没有一个FF脚本加载项也可以这样做。

可以编写一个扩展/附加组件来重置焦点,但这里真正的问题是用户忽略了适合该工作的工具。

正如Scott Cranfill所说,使用 Ctrl T 打开一个新标签。

如果绝对需要按钮,Firefox已经提供了一个按钮。这样做:

  1. 在Firefox菜单中,选择查看 - > 工具栏 - > 自定义...
  2. 找到“新标签”图标enter image description here并将其拖至工具栏。
  3. 如果您想要一个新的空白标签页,请从现在开始点击那个图标。
  4. 完成!