Partage
  • Partager sur Facebook
  • Partager sur Twitter

Executer un bout de code le plus tôt possible

    2 mars 2009 à 20:09:48

    Bonjour, dans la version 3 de finalclap, j'utilise un panneau déroulant qui me sert de menu pour mes tutoriaux.

    Tant que le visiteur ne clique pas sur tutoriaux, ce panneau est caché (j'utilise mootools pour le slide).

    Donc j'ai ce code javascript :

    window.onload = function() {
    	var mySlide = new Fx.Slide('tutoriaux');
    	mySlide.hide();	// Je cache le panneau
    	
    	$('toggle').addEvent('click', function(e){
    	e = new Event(e);
    	mySlide.toggle();
    	e.stop();
    	});
    }
    


    Le problème c'est qu'il y a un petit laps de temps entre l'affichage de la page et le masquage du panneau, parce que le navigateur a plein de travail à faire sur la page (plein d'autre truc javascript comme les annonces publicitaires...)

    C'est pas agréable à la navigation, donc comment je pourrais faire pour que le panneau soit caché le plus rapidement possible ?

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      2 mars 2009 à 20:28:51

      tu lui mets un display:none;
      et à la fin de tout ton code, tu l'enlève(après qu'il ai été déplacé donc) avec un bout de javascript...
      • Partager sur Facebook
      • Partager sur Twitter
        2 mars 2009 à 20:53:58

        Merci, ça marche. par contre il faut faire les hide après, sinon le panneau se déroule de haut en bas (enfin l'effet n'est pas le même) :

        window.onload = function() {
        	var mySlide = new Fx.Slide('tutoriaux');
        	
        	$('toggle').addEvent('click', function(e){
        	e = new Event(e);
        	mySlide.toggle();
        	e.stop();
        	});
        	
        	var loginSlide = new Fx.Slide('login-box');
        	
        	$('toggleLogin').addEvent('click', function(e){
        	e = new Event(e);
        	loginSlide.toggle();
        	e.stop();
        	});
        	
        	document.getElementById('tutoriaux').style.display = "block";
        	mySlide.hide();
        	document.getElementById('login-box').style.display = "block";
        	loginSlide.hide();
        }
        
        • Partager sur Facebook
        • Partager sur Twitter

        Executer un bout de code le plus tôt possible

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown