2010-09-23 13 views
23

¿cómo puedo cambiar el foco en div en particular después de cualquier evento a través de jquery?cambiar el foco en particular div

+0

Bien puedes usar: '$ ('# element'). Focus()' pero no estoy muy seguro de lo que quieres decir, porque esto no tendrá ningún efecto en los DIV. No puedes "enfocar" un div realmente ... no hace nada. ¿Qué estás intentando lograr? –

Respuesta

59

Para hacer un divisor div, necesita tener un atributo tabindex.

<div id='test' tabindex='1'></div> 

Luego, puede enfocar con, por ejemplo,

$('#something').click(function() { 
    $('#test').focus(); 
}); 
+0

Está bien con IE y Chrome. No funciona en Firefox. ¿Qué puedo hacer? –

+0

[Esta información] (http://nemisj.com/focusable/) parece indicar que debería funcionar en FF. ¿Estás seguro de que no es solo un problema de visualización? – sje397

+0

@Loganphp - Probé Firefox 3.6.8 usando [este ejemplo] (http://jsfiddle.net/SNXk2/) y funcionó bien. – sje397

6

Uso

$ (ventana) .scrollTop()

que va a desplazar la ventana al elemento.

var scrollPos = $(".focusme").offset().top; 
$(window).scrollTop(scrollPos); 
+0

nice one. ¿Alguna idea de cómo calcular el tamaño de la ventana y restar el 45% de esa cantidad para que la posición de desplazamiento termine en algún lugar en el centro? – Aurovrata

+0

encontró la respuesta [aquí] (https://stackoverflow.com/questions/4952533/jquery-position-div-in-middle-of-page#answer-4952569) :) – Aurovrata

Cuestiones relacionadas