如何阻止google.com将光标从网址上移开并将其聚焦在使用Greasemonkey的搜索框上?
我使用谷歌作为我的主页并点击主页按钮打开一个新标签,也许不是最好的方法,但这是习惯。我将开始输入一个URL,当页面完成后,加载Google搜索字段会在我打字完成时将光标拉开。
我知道相当数量的javascript,但我甚至不知道在查看Googles页面源时从哪里开始。如果有人可以为此写一个脚本,我会永远爱你,我相信很多人也会这样做!
编辑:
可能更好的问题是如何使用Adblock Plus做到这一点?
编辑#2:
是否可以在使用firefox插件加载特定页面之前运行javascript?或者,是否可以在加载之前在页面上阻止javascript?
我不是在寻找任何“工作”我正在寻找修复。修复删除或禁用“document.f.q.focus()”。
编辑#3:书签怎么样?这有可能吗?
答案 0 :(得分:2)
这是一个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已经提供了一个按钮。这样做: