无法在Chrome控制台中使用javascript将焦点和光标设置为输入文本

Unable to set focus and cursor to input text using javascript in Chrome Console

本文关键字:光标 焦点 设置 文本 输入 javascript Chrome 控制台      更新时间:2023-09-26

这是对这个SO答案的引用。我正在web.whatsapp.com(chrome)上尝试同样的输入搜索字段。这是我的代码:

document.getElementsByClassName("input input-search")[0].focus()
document.getElementsByClassName("input input-search")[0].select()

以上内容在镀铬控制台上不起作用。

还有jQuery代码:

$(".input-search").focus() 

不起作用。是什么原因导致我即使在执行了上述方法之后也看不到光标?

我认为这和class、id、javascript或jQuery的问题无关。这就是浏览器控制台的工作方式。每个命令运行后,控制台都会获得焦点。因此,焦点将不适用于来自控制台的其他输入。

要测试它,请在控制台中运行此代码。

setTimeout(function(){$(".input.input-search").focus()},5000);

执行后,立即点击页面上的任何位置,将焦点从控制台移开。现在5秒钟后,焦点将设置在输入上。