尝试使用Greasemonkey修改Google的搜索文本框

时间:2012-04-06 06:01:44

标签: greasemonkey customizing

我昨天碰巧发现,在Google中输入搜索文字时,我的搜索记录突然停止显示。我使用https://www.google.com/webhp?complete=0网址来阻止自动建议的显示。过去效果很好,但现在谷歌已经做了一些事情来阻止它工作。

我使用Firefox并安装了Greasemonkey。我有兴趣学习Greasemonkey的脚本,这似乎是开始学习的好时机。有没有人有任何将Google上的搜索输入表单更改为其他样式的示例,以便可以查看搜索历史记录?我搜索过并找到了文本框修改的示例,但它们不适用于Google使用的特定输入框样式。

TIA,
布赖恩

2 个答案:

答案 0 :(得分:1)

// ==UserScript==
// @name            re enable autocomplete
// @namespace       http://gcomplete.user.js
// @description     
// @include         htt*://*.google.com/webhp?complete=0
// ==/UserScript==
////////////////////////////////////////////////

    function doIt(){
        document.getElementById("lst-ib").autocomplete = "on";
        window.setTimeout(doIt, 5000);  // wait 5 sec and reapply changes, looped.
    }
    window.setTimeout(doIt, 500);       // wait half a second and apply changes.

这可能不是您需要的确切代码,但它应该非常接近 我选择了循环,因为我很懒,因为文本框似乎被破坏并至少重新创建一次 “lst-ib”是您想要的文本框的ID,它具有“自动完成”属性,谷歌帮助设置为“关闭”

答案 1 :(得分:1)

我已经尝试了the code that RozzA provided,只要您单击文本区域然后单击返回文本区域,它就会起作用。我为它做了以下mods,它们似乎解决了这个问题:

function doIt() {
    document.getElementById("lst-ib").autocomplete = "on";
    document.getElementById("lst-ib").blur(); // disable focus
    document.getElementById("lst-ib").focus(); // re-enable focus

    // looping does not seem to be necessary.
    // window.setTimeout(doIt, 5000);
}


window.setTimeout(doIt, 500);       // wait half a second and apply changes.