Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.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 jquery focus命令没有';不能从chrome命令行工作_Javascript_Jquery_Google Chrome - Fatal编程技术网

Javascript jquery focus命令没有';不能从chrome命令行工作

Javascript jquery focus命令没有';不能从chrome命令行工作,javascript,jquery,google-chrome,Javascript,Jquery,Google Chrome,如果我有如下所述的文本页面。调用$(“#target”).focus()工作正常。我还可以将该命令绑定到更真实页面中的事件 但是,如果我打开chrome控制台并键入$(“#target”).focus()它不会改变焦点。如果我运行$(“#target”).val(“某物”)它更改屏幕上的值,但不与焦点一起工作 显然这不是一个关键问题,但我真的很好奇为什么会发生这种情况。有人有主意吗 <html> <head> <script src="jquery-1.

如果我有如下所述的文本页面。调用
$(“#target”).focus()$()
部分的code>工作正常。我还可以将该命令绑定到更真实页面中的事件

但是,如果我打开chrome控制台并键入
$(“#target”).focus()它不会改变焦点。如果我运行
$(“#target”).val(“某物”)它更改屏幕上的值,但不与焦点一起工作

显然这不是一个关键问题,但我真的很好奇为什么会发生这种情况。有人有主意吗

<html>
  <head>
    <script src="jquery-1.9.1.js"></script>
    <script>
      $(function(){
         $("#target").focus();
      });
    </script>
  </head>

 <body>
   <input id="target" type="text">
 </body>
</html>

$(函数(){
$(“#目标”).focus();
});

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


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

一种可能的方式是:取消焦点/模糊控制。将其从视图中滚动出去。在Chrome控制台中输入聚焦命令。如果该网站将向上滚动到您的控件,您可以确保“聚焦”方法有效。

有点像黑客,但有效

尝试用
setTimeout:D
包装突出显示代码,并在计时器过期之前单击网页

ele2 = $('#input')
setTimeout(function(){ele2.focus()},4000);

如果您单击页面的选项卡使chrome窗口处于活动状态(使用Windows时),那么您试图从控制台中聚焦()的元素现在应该具有焦点。我也遇到了同样的问题,发现它确实在页面内转移了焦点,但它根本没有显示出来,因为从技术上讲,您位于不同的窗口中。@asifrc不在我的Chrome 24.0.x Mac 10.8.2上。是的,我不确定这一点,但在我的经验中,它适用于Windows(更新了我以前的评论)。这完全令人惊讶!我只是花了好几分钟在愤怒中专注()不起作用。。。因为我在控制台中测试它。谢谢