2012-06-14 10 views
10

Quiero establecer el foco en div en particular usando jquery o javascript. acabo de utilizar document.getElementById("pack_0").focus(); en que 'pack_0' es mi identificación del div pero no funciona. Observé que '#' ya está agregado en mi url debido a un código emergente, por lo que mi url es 'http: // localhost/web/book #'cómo establecer el foco en un div usando javascript o jquery cuando # ya está agregado en url?

Entonces, ¿alguien me puede ayudar a enfocar completamente la fuerza div cuando # en url?

Gracias de antemano.

+0

¿Qué es exactamente lo que quiere decir con * establecer el foco en una div *? – VisioN

Respuesta

23

partir de la pregunta, creo que lo que realmente se quiere decir con "centrar el div" es "cambiar la posición de desplazamiento vertical de la ventana para que el div es visible". Si ese es el caso, puede usar el siguiente bit de código jQuery:

$(window).scrollTop($('#pack_0').offset().top); 
+1

gracias a su trabajo bien –

+0

Su trabajo para mí también – Linto

+0

solucionó el problema del cliente en 2 minutos. gracias – Rajashekhar

6

La suposición de Anthony Grist es probablemente correcta en su caso. Sin embargo, puede ayudar a otros que buscan en este tema para saber que si el objeto deseado de enfoque es un DIV, que DIV debe tener un conjunto tabindex, por ejemplo, tabindex = "9999". De lo contrario, la mayoría de los navegadores no asignarán el foco.

+0

Muchas gracias SOOOO por esto :) Me preguntaba por qué no funcionaba como 3 horas ahora ... – KevinG

3

Para ajustar el enfoque a DIV primero necesitamos definir tabindex para determinados div como la siguiente

<div class="leftbar-btn-module" tabindex="-1">'Content'</div> 

y jQuery para ajustar el enfoque

jQuery(".leftbar-btn-module").attr("tabindex",-1).focus(); 
Cuestiones relacionadas