2010-11-03 23 views
20

Tengo dos etiquetas div, una para la búsqueda y otra para los resultados. Lo que necesito es que cuando se hace clic en el botón de enviar, los resultados se devuelven y se colocan en el div de resultados (con un iframe) y el div de búsqueda se oculte y los resultados div se hagan visibles.Haz que un div sea visible y otro invisible

búsqueda div se establece inicialmente en visible (usando la visibilidad a visible) y el div de resultados se establece inicialmente en oculto (usando la visibilidad como oculto).

Además, inicialmente hay un gran espacio en blanco en la parte inferior de la página donde se encuentra el div oculto, así que ¿cómo puedo asegurarme de que no haya espacio en blanco adicional en la parte inferior también?

Respuesta

18

Hacer que sea invisible con la visibilidad aún hace que ocupe espacio. Más bien intente configurar la pantalla en ninguna para que sea invisible, y luego configure la pantalla para que se bloquee y la haga visible.

+0

Funciona perfectamente! gracias Mi otro yo – mattgcon

+1

Corrígeme si me equivoco, pero con un iFrame DEBE hacerlo visible y mostrar o de lo contrario algunos navegadores no cargarán el contenido por razones de seguridad. Sin embargo, puede hacerlo 1x1px y opacidad 0.01%. Me encontré con este problema una vez con un widget de carga entre sitios. – CoolAJ86

+0

@ CoolAJ86: No estoy seguro. Nunca he usado un iframe ... Alguna vez –

8

No creo que realmente quiera un iframe, ¿verdad?

A menos que esté haciendo algo extraño, debería obtener los resultados como JSON o (en el peor de los casos) XML, ¿verdad?

Para su problema de espacio caja blanca/adicional, trate

style="display: none;" 

en lugar de

style="visibility: hidden;" 
+0

sí en realidad lo hago, bueno, no QUIERO uno pero lo requiere el cliente – mattgcon

26

Usted puede utilizar la propiedad de presentación de estilo. Intialy estableció el estilo de sección de resultado como

style = "display:none" 

Luego, el div no estará visible y no habrá ningún espacio en blanco.

Una vez que los resultados de la búsqueda se está poblando el cambio de la propiedad de visualización utilizando la escritura de Java como

document.getElementById("someObj").style.display = "block" 

El uso de java script que puede hacer el div invisible

document.getElementById("someObj").style.display = "none" 
+0

o en jQuery land $ () .show(); FWIW – rogerdpack

0

U Si desea utilizar la pantalla = bloquearlo hará que el lector de contenido salte, por lo tanto, en lugar de usar la pantalla, puede configurar el atributo izquierdo en un valor negativo que no existe en la página html para mostrarse, pero en realidad sí lo hace.

Espero que entiendas mi punto, si no puedo hacerte entender me puedes devolver el mensaje.

Cuestiones relacionadas