无法通过 js .focus() 捕获对所需元素的关注

Not able to capture focus on desired element by js .focus()

当我调用 $('#someelement').focus() 时,它没有给出任何错误消息,但实际上不起作用。当我尝试获取 document.activeElement 时,它仍然返回 body 元素。

下面是我的控制台结果:

检查这个 plunk 它似乎工作正常。

<!DOCTYPE html>
<html>

  <head>
    <script data-require="jquery@3.0.0" data-semver="3.0.0" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>

  <body>
    <h1>Hello Plunker!</h1>
    <input type="text" />
    <script>
  $('document').ready(function(){
    $('input').focus();
  })
    </script>
  </body>

</html>

如果要重点div。我建议你使用 this。你看,它向下滚动到有问题的 div。

<!DOCTYPE html>
<html>

  <head>
    <script data-require="jquery@3.0.0" data-semver="3.0.0" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
  </head>

  <body>
    <h1>Hello Plunker!</h1>
    <h1>Hello Plunker!</h1>
    <h1>Hello Plunker!</h1>
    <h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1><h1>Hello Plunker!</h1>
    <div id="somediv">this is the div</div>
    <script>
  $('document').ready(function(){
    window.location.hash = "#somediv";
  })
    </script>
  </body>

</html>

您正在为 #IncomeExpense_wrapper 调用 .focus,即 <div>div 没有 focus 事件,只有输入元素有。

无法提供更多帮助,因为您没有提供有关关注 div 必须做什么的信息。