web-dev-qa-db-ja.com

divが下にスライドしたときに入力フィールドにオートフォーカス

私は隠されたdivを持っています。ボタンをクリックすると、divが入力フィールドとともにスライドします。 divがスライドしたらすぐにこの入力フィールドをオートフォーカスするにはどうすればよいですか?ありがとう。

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

私が持っているものであり、divにあります

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

上記を使用しようとしましたが、うまくいきませんでした。

13
Elmer Almeida

アニメーションの完了時に実行されるslideDownのコールバック関数を使用できます。

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

IDは一意である必要があります。一意でない場合、IDセレクターはその特定のIDを持つ最初の要素のみを選択します。 input要素がdivタグ内にある場合は、次のようにコーディングすることもできます。

$("#status_comments_"+a).slideDown(function(){
    $('input', this).focus();
});
18
undefined
 $("#divId").show().focus();

document.getElementById('divID').focus();
0
user5004402