14

我有一个隐藏的div。单击按钮时,div 会随着输入字段向下滑动。一旦 div 向下滑动,如何使这个输入字段自动对焦?谢谢。

<input type="text" name="comment_field" id="comment_field" placeholder="Comment..." />

是我拥有的并且在 div 中

$("#status_comments_"+a).slideDown();
    $("#comment_field").focus();

我尝试使用上述方法,但没有奏效。

4

4 回答 4

20

您可以使用slideDown动画完成时执行的回调函数。

$("#status_comments_"+a).slideDown(function(){
    $("#comment_field").focus();
});

请注意,ID 必须是唯一的,否则您的 ID 选择器只会选择具有该特定 ID 的第一个元素。如果输入元素在 div 标签内,您还可以编写代码:

$("#status_comments_"+a).slideDown(function(){
    $('input', this).focus();
});
于 2012-09-15T19:21:51.673 回答
0
 $("#divId").show().focus();

document.getElementById('divID').focus();
于 2015-06-12T18:39:53.373 回答
-1

隐藏字段无法获得焦点..所以你需要做的是点击你必须显示的按钮。

$("#status_comments_"+a).show().slideDown();
    $("#comment_field").show().focus();
于 2012-09-15T19:07:05.750 回答
-1
$("#divID").focus();

或者没有 jQuery:

document.getElementById('divID').focus();
于 2015-06-12T18:36:16.013 回答