这可能很简单,但是谁能告诉我如何让光标在页面加载时在文本框上闪烁?
当前回答
将焦点设置在第一个文本字段:
$("input:text:visible:first").focus();
这也适用于第一个文本字段,但你可以将[0]更改为另一个索引:
$('input[@type="text"]')[0].focus();
或者,你可以使用ID:
$("#someTextBox").focus();
其他回答
输入后放置
<script type="text/javascript">document.formname.inputname.focus();</script>
将焦点设置在第一个文本字段:
$("input:text:visible:first").focus();
这也适用于第一个文本字段,但你可以将[0]更改为另一个索引:
$('input[@type="text"]')[0].focus();
或者,你可以使用ID:
$("#someTextBox").focus();
$(" #搜索”).focus ();
你也可以使用HTML5 element <autofocus>
行$('#myTextBox').focus()单独不会把光标放在文本框中,而是使用:
$('#myTextBox:text:visible:first').focus();
在这样做之前,请考虑一下您的用户界面。我假设(尽管没有一个答案这样说),您将在使用jQuery的ready()函数加载文档时这样做。如果用户在文档加载之前已经将焦点放在了不同的元素上(这是完全有可能的),那么对他们来说,焦点被窃取是非常令人恼火的。
你可以通过在每个<input>元素中添加onfocus属性来检查这一点,以记录用户是否已经关注了一个表单字段,如果他们已经关注了,那么不要窃取焦点:
var anyFieldReceivedFocus = false;
function fieldReceivedFocus() {
anyFieldReceivedFocus = true;
}
function focusFirstField() {
if (!anyFieldReceivedFocus) {
// Do jQuery focus stuff
}
}
<input type="text" onfocus="fieldReceivedFocus()" name="one">
<input type="text" onfocus="fieldReceivedFocus()" name="two">
推荐文章
- 如何为Firebase构建云函数,以便从多个文件部署多个函数?
- 如何发送推送通知到web浏览器?
- AngularJS:工厂和服务?
- js:将一个组件包装成另一个组件
- 我如何在网站上使用谷歌的Roboto字体?
- 父ng-repeat从子ng-repeat的访问索引
- 如何禁用文本区域大小调整?
- JSHint和jQuery: '$'没有定义
- 模仿JavaScript中的集合?
- 用JavaScript验证电话号码
- 如何在HTML5中改变视频的播放速度?
- 保留HTML字体大小时,iPhone的方向从纵向改变为横向
- 谷歌地图API v3:我可以setZoom后fitBounds?
- 用jQuery检查Internet连接是否存在?
- 如何使用滑动(或显示)函数在一个表行?