11543 sujets

JavaScript, DOM et API Web HTML5

Bonjour tout le monde,
J'ai un menu qui charge des pages html dans un div via la fonction .load de jQuery,
mon soucis :
Je voudrais lorsque je clique à nouveau sur mon menu, que la page html chargée disparaisse avec un effet fadeOut et qu'ensuite la nouvelle page HTML se charge avec un fadeIn

Je galère depuis 2 jours, je n'arrive pas à savoir comment faire...
Avez-vous une solution à mon problème ?

Voici le début de mon code qui permet de charger un page html dans un div avec un effet fadeIn :

// Clic sur accueil = charge la page "page1.html" en fadeIn
$('#accueil').click(function() {
$('#ecran').hide().load('page2.html', function() {
$(this).fadeIn(1000);
});
return false;
});

Merci pour vos réponses !
Salut,
j'y suis presque, je tourne autour...
Pour le moment lorsque je clique sur "#presentation" le div de mapage disparait bien avec un effet de fadeOut mais ensuite rien ne se passe, soit le div reste invisible soit la page n'est pas chargée... Normalement ensuite la page HTML se charge dans le div avec un effet fadeIn.
Pourrais tu me dire à quel endroit ça déconne ?

Merci d'avance !

		// Au clique sur #presentation, le div #contenu disparait en fadeOut,
                // Ensuite il charge la page HTML dans le div #contenu et apparait en fadeIn
  		$('#presentation').click(function(){
  			$('#contenu').fadeOut(1000), function() {
  				$(this).hide().load('presentation.html', function() {
  					$('#contenu').fadeIn(1000);
  				});
  			return false;
  			};
  		});
Je viens de trouver la solution,
la voici pour ceux que ça intéresse :


// Au clique sur #presentation, le div #contenu disparait en fadeOut,
// Ensuite il charge la page HTML dans le div #contenu et apparait en fadeIn
$('#presentation').click(function(){
  	$('#contenu').fadeOut('slow', function(){
    		$('#contenu').hide().load('presentation.html', function(){
        		$('#contenu').fadeIn('slow');
        	});
    	});
});