2009-12-01 19 views
5

Saludos, He escrito un modal usando jquery UI y aparece en la parte frontal de una película flash por lo que el html dentro del modal se corrompe, traté de ocultar la película derecha antes de que el modal se active y reaparezca después de cerrar el modal, funciona bien pero cada .hide() y .show() la película flash se restablece mientras que todo lo que quiero es ocultar (sin quitar la película) y mostrarlo una vez que se activa. .show ese modal div.jquery ocultar un div que contiene flash sin restablecerlo

Respuesta

10

Probado en FF/Linux, FF/WinXP, IE/WinXP, Safari/WinXP:

  • poner el flash DIV contenedor en una nueva DIV con overflow: hidden.

básica:

  • para ocultar flash div:. $ ('# Id_div_with_swf') CSS ("izquierda", "- 2000px");
  • para mostrar flash-div: $ ('# id_div_with_swf'). Css ("left", "0px");

o, mostrar y ocultar con efectos de animación:

  • para ocultar flash div: $ ('# id_div_with_swf') animar ({left: "-2000px"}, 1000);.
  • para mostrar flash-div: $ ('# id_div_with_swf'). Animate ({left: "0"}, 1000); ejemplo

html:

<div style="width:200px; height:100px; overflow:hidden;"> 
<div id="id_div_with_swf" style="width:200px; height:100px; position:relative; left:0px; top:0px;"> 
<!-- flash here --> 
</div> 
</div> 

no se puede obtener un cross-browser solución con Css de trabajo ('visibilidad', 'visible'/'oculta')

+0

Wouldn ¿No se puede alternar la visualización de una enorme barra de desplazamiento horizontal en el navegador? –

5

Quizás mueva el movie div fuera de la pantalla. Establecer su posición izquierda para ser -1000 o algo así?

¿Entonces reemplace cuando el otro div ha desaparecido?

8

Solución de trabajo:

Uso $('#myvideo').css('visibility', 'hidden') ocultar y
$('#myvideo').css('visibility', 'visible') para mostrar el div que contiene el video.

Acabo de probarlo con firebug.

EDITAR: Tenga en cuenta, esto es diferente de .hide() y .show(), ya que utilizan el css display, en lugar de visibility.

Cuestiones relacionadas