Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何遍历谷歌搜索结果页面中的输入字段并自动聚焦?_Javascript_Events_Focus - Fatal编程技术网

Javascript 如何遍历谷歌搜索结果页面中的输入字段并自动聚焦?

Javascript 如何遍历谷歌搜索结果页面中的输入字段并自动聚焦?,javascript,events,focus,Javascript,Events,Focus,我想设置一个快捷方式,将焦点放在Google搜索结果页面的输入字段上,而不是使用mouseover或mousemove事件 如何使用Javascript遍历页面中的所有元素以获取要执行的输入字段focus() document.addEventListener('keydown',function(event){ var keynum; if(window.event) // IE { keynum = event.keyC

我想设置一个快捷方式,将焦点放在Google搜索结果页面的输入字段上,而不是使用mouseover或mousemove事件

如何使用Javascript遍历页面中的所有元素以获取要执行的输入字段
focus()

document.addEventListener('keydown',function(event){
        var keynum;
        if(window.event) // IE
        {
            keynum = event.keyCode;
        }
        else if(event.which) // Netscape/Firefox/Opera
        {
            keynum = event.which;
        }
        console.log(event.keyCode)

        if(keynum==79&&event.altKey){
          //get the input element in a page and execute focus()
        }
    });

首先,要获取搜索栏元素,我们需要使用
querySelector
。之后,我们需要关注输入。即使在这之后,我们也不会看到谷歌给我们的自动建议。因此,我们还需要刺激
点击
事件。下面的代码将完成这项工作-

let searchBar = document.querySelector("input[type=text]");
searchBar.focus();
searchbar.click();

令人头痛的是,有些网站没有输入类型,而且有很多输入元素,所以这只适用于输入类型为文本的网站,就像谷歌搜索结果一样。@lyscop是的,确实如此。但是,您无法预测哪个站点将使用哪种类型的输入以及它们的顺序。我刚刚检查了谷歌搜索结果页面,找到了特定的输入。如果你必须在其他地方使用它,那么你必须调整到网站的html中,以找到搜索栏的方法。