0

我有一个类似于的滚动框:

http://www.quackit.com/html/codes/html_scroll_box.cfm

现在,您必须在页面加载后在其中单击才能使用箭头键上下移动。我希望它在页面加载时,焦点已经在它里面,所以你不必在里面点击来使用箭头键。有没有办法做到这一点?

谢谢!

4

3 回答 3

3

is not focusable 元素,div因此焦点功能可能无法正常工作,tabindex请为您添加属性以div使焦点功能正常工作。

<div id="yourDivID" tabindex="-1"></div

根据赋予 的值tabindex,它的行为会有所不同:

  • 0 将允许您使用键盘箭头和制表键聚焦元素
  • -1 将禁用选项卡,但仍可聚焦
  • 任何大于 0 的值都可以让您优先考虑选项卡焦点,其中 1 具有最高优先级



如果你想使用 Jquery ,现在你可以在 div 中使用焦点

$("#yourDivID").focus();

如果你想使用 JavaScript

document.getElementById("yourDivID").focus();
于 2013-07-18T18:19:11.670 回答
0

这正是您需要的。请注意,这里有一些关键的东西。首先,文档的主体需要具有“onload”属性,调用您的“Focus”小简单脚本。我对您的代码所做的唯一更改是在 div 中添加了“id”属性。您可以更改此设置以满足您的需要。

享受!

<body  onload="Focus()">
<div id="myDiv" style="height:120px;width:120px;border:1px solid #ccc;font:16px/26px Georgia, Garamond, Serif;overflow:auto;">
As you can see, once there's enough text in this box, the box will grow scroll bars... that's why we call it a scroll box! You could also place an image into the scroll box.
</div>
 <script type="text/javascript">
 function Focus()
 {
    document.getElementById("myDiv").focus();
 }
 </script>
 </body>

您只需将此代码复制到一个全新的文本文件中,然后使用 .html 扩展名保存即可。然后双击它,它应该在您的任何浏览器中打开。如果您启用了脚本,那么它应该可以正常滚动。

于 2013-07-18T17:39:24.890 回答
0

准备好 DOM 后,只需设置焦点:

$("#yourTextboxID").focus();
于 2013-07-18T17:06:18.677 回答