2012-09-15 25 views
10

Tengo es un div oculto. Cuando se hace clic en el botón, el div se desliza hacia abajo con un campo de entrada. ¿Cómo puedo hacer que este campo de entrada se enfoque automáticamente tan pronto como deslice hacia abajo el div? Gracias.Enfoque automático en el campo de entrada cuando div se desliza hacia abajo

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

es lo que tengo y está en un div

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

He intentado utilizar el anterior, pero que no funcionó.

Respuesta

14

Puede utilizar la función de devolución de llamada slideDown 's que se ejecuta cuando la animación se ha completado.

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

Tenga en cuenta que los ID deben ser únicos, de lo contrario, su selector de ID solo selecciona el primer elemento con ese ID específico. Si el elemento de entrada está dentro de la etiqueta div también puede código:

$("#status_comments_"+a).slideDown(function(){ 
    $('input', this).focus(); 
}); 
-1

campo oculto no se puede enfocar .. lo que debe hacer es al hacer clic en el botón que tiene que mostrar.

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

que no funciona :( –

-1
$("#divID").focus(); 

o sin jQuery:

document.getElementById('divID').focus(); 
0
$("#divId").show().focus(); 

document.getElementById('divID').focus(); 
Cuestiones relacionadas