在页面加载时将焦点设置在滚动框上
Set focus on scrollbox on pageload
我有一个类似于的滚动框
http://www.quackit.com/html/codes/html_scroll_box.cfm
现在,您必须在页面加载后单击它内部,才能使用箭头键上下移动。我希望它在页面加载时,焦点已经在里面了,所以你不必点击里面就可以使用箭头键。有办法做到这一点吗?
谢谢!
div
是不可聚焦的元素,因此聚焦函数可能无法工作,请将tabindex
属性添加到div
以使聚焦函数正常工作。
<div id="yourDivID" tabindex="-1"></div
根据给tabindex
的值,它的行为会有所不同:
- 0将允许您使用键盘箭头和制表键聚焦元素
- -1将禁用选项卡,但它仍然可以聚焦
- 任何大于0的值都将允许您对选项卡聚焦进行优先级设置,其中1具有最高优先级
现在您可以在div中使用焦点
如果您想使用Jquery
$("#yourDivID").focus();
如果您想使用JavaScript
document.getElementById("yourDivID").focus();
这正是您所需要的。请注意,这里有一些关键内容。首先,文档的主体需要有一个"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扩展名保存,就可以看到这一点。然后双击它,它应该会在任何浏览器中打开。如果您启用了脚本,那么它应该可以滚动。
在DOM就绪时,只需设置焦点:
$("#yourTextboxID").focus();
相关文章:
- 设置滑块分区上的滚动
- 拖动时设置滚动条不透明度
- JScrollpane不会设置滚动条的样式
- Jquery JScrollPane-设置滚动速度/灵敏度
- 动态设置滚动坐标并从这些坐标以200px滚动容差更改DOM元素
- 是否可以只为一个系列的dygraph设置滚动平均值
- 如何设置滚动条位置
- 如何使用jQuery在移动网络浏览器上设置滚动动画
- .设置滚动宽度的动画
- 使用Iscroll脚本设置滚动位置
- 如何设置滚动条的动态宽度
- 最大高度/行数和设置滚动
- 如何设置滚动条,使其不会重置
- 在窗口上设置滚动时抖动
- AngularJS指令,用于设置滚动时的CSS闪烁
- 如何设置滚动到顶部刷新/加载?(只支持AngularJs或Js,不支持Jquery)
- 设置滚动时类的背景颜色,并且类必须处于固定位置
- HTML5:设置滚动条区域背景颜色
- 组件安装前反应设置滚动位置
- 在选择框的特定位置设置滚动条