jquery focus命令在chrome命令行中不起作用

如果我有如下所述的文本页面。 调用$("#target").focus(); 在标题的$()部分工作正常。 我还可以将该命令绑定到更逼真的页面中的事件。

但是,如果我打开chrome控制台并键入$("#target").focus(); 它不会改变焦点。 如果我运行$("#target").val("something"); 它会更改屏幕上的值,但它不适用于焦点。

显然这不是一个关键问题,但我真的很好奇为什么会这样。 有人有想法吗?

     $(function(){ $("#target").focus(); });       

您将意识到,当点击Chrome控制台时,它将从当前页面上的任何输入或textarea控件中窃取焦点,反之亦然。 这是因为Chrome控制台实际上使用与任何其他HTML页面相同的HTML控件实现,只是使用特殊属性,例如,阻止Chrome以递归方式检查Chrome控制台。

当您在Chrome控制台中输入命令时,即在Chrome控制台中的输入控件中,它将保持焦点。 Chrome工程师可能选择以不同方式实现它,但在大多数情况下,用户希望在触发命令后继续在Chrome控制台中键入内容,因此任何命令都不会从控制台释放焦点。