Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/06/2008, 05:21
Avatar de jerkan
jerkan
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: jquery slideToggle

Bueno, lo he resuelto sin el slideToggle de esta manera:
Código:
$(document).ready(function()
{
// por defecto, escondemos la capa y ponemos su estado en escondido
	
	$('#capa').hide(); 
	$('#capa').attr('status', 'hidden'); 

	$('#menu_capa').click(function(){
			
	// si la capa esta escondida
		if( $('#capa').attr('status') == 'hidden' )
		{
		// mostramos la capa
			$('#capa').slideDown('slow',function(){
			// cuando acaba de mostrarse, substituimos su contenido por un flash
				$('#capa').flash(
					{ src: 'capa.swf', width: 320, height: 240 }, 
					{ version: 8 },
					function(htmlOptions){	
						jQuery(this)
							.addClass('flash-replaced')
								.html($.fn.flash.transform(htmlOptions));				
					}
				);
			});
				
		// cambiamos el estado de la capa a 'mostrada'
			$('#capa').attr('status', 'shown');
		}
	// si la capa esta 'mostrada'
		else if( $('#capa').attr('status') == 'shown' )
		{
		// substituimos el contenido de la capa por una imagen
			$('#capa').html("<img src=\"capa.jpg\" />");
				
		// cerramos la capa
			$('#capa').slideUp('slow');
					
		// cambiamos el estado de la capa a 'escondida'
			$('#capa').attr('status', 'hidden');
		}

		return false;
	});

});
EDIT: Se me olvidó decir que utilicé este plugin flash.