Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/09/2012, 09:00
LoGaNsF
 
Fecha de Ingreso: mayo-2006
Ubicación: Sevilla
Mensajes: 33
Antigüedad: 18 años, 6 meses
Puntos: 0
Problema .load jQuery

Hola,

Ando liado con mi web, ya casi la tengo lista, y me encuentro atascado con el .load, quizás no se como funciona o algo estoy haciendo mal.

Estoy haciendo una sección portfolio para mostrar mis trabajos. Pues bien, tengo una "galería" de miniaturas y pulsando sobre la capa (son capas con imágenes de fondo) se despliega en la parte superior de la galería una capa con una imagen y la descripción del trabajo, así como un enlace para ir al sitio a verlo.

Lo que es abrirse (le he puesto un slideUp/Down) lo hace bien, pero tengo un load que carga el contenido de esa capa oculta, se muestra muy rápido. Es decir, pulso en la galería, se despliega la capa con los datos cargados. Estupendo, pero ahora que esta abierta pulso sobre otro "trabajo" y el load carga los datos en la capa, esta se repliega y se despliega. Yo quiero que se repliegue primero, luego cargue los datos con load y se despliegue. Os pongo el código que tengo ahora mismo, he probado muchas cosas, esto es lo ultimo:

Código:
       $('.pf').on({
		'mouseover': function(){
			$(this).find('.desc').stop(false, true).slideDown();
		},
		'mouseout': function(){
			$(this).find('.desc').stop(false, true).slideUp();
		},
		'click': function(){
			var $disp 	= $('#pf-display'),
				dir 	= './portfolio.html #display-' + $(this).attr('id');
			
			$disp.ajaxStart(function(){
				if($(this).is(':visible'))
					$(this).slideUp(400);
			});

			$disp.ajaxStop(function(){
				if($(this).html() !== '')
					$(this).slideDown(600);
			});

			$disp.slideUp(400).load(dir);
		}
	});
Los "pf" son las capas sobre las que pulsar, los eventos de entrada y salida del ratón son para mostrar una descripción, eso va bien.

Lo que tenia antes era el slideUp (solo si era visible), hacia la carga con load y en el callback de este le decía que hiciera slideDown, también probé load(...).slideDown(), pero nada.

A ver si sabéis que estoy haciendo mal.

Gracias.

Un saludo.