Partage
  • Partager sur Facebook
  • Partager sur Twitter

"Ciblage" avec ID

...pour un scroll

    20 octobre 2008 à 12:07:41

    Bonjour à tous (et aussi toutes :-° ),

    J'ai récupéré un petit javascript permettant de créer un zoli scroll personnalisé !
    Le voici donc:

    var Timer=null;
    var Pas = 6;
    function moveLayer(Sens) {
    	var Objet=document.getElementById("contenu");
    	if(parseInt(Objet.style.top) + (Pas*Sens)>0)  {
    		clearTimeout(Timer);
    	}
    	else if(parseInt(Objet.style.top) + (Pas*Sens)<-(Objet.offsetHeight-document.getElementById("sousmenus").offsetHeight)) {
    		clearTimeout(Timer);
    	}
    	else {
    		Objet.style.top = (parseInt(Objet.style.top) + (Pas*Sens)) + "px";
    	}
    	Timer = setTimeout("moveLayer(" + Sens + ");", 30);
    }
    


    ...et sur ma page html:
    <div id="sousmenus" style="position:relative; top:0px; overflow:hidden; height:30px;">
            
    	<div id="contenu" style="position:absolute; top:0px;">
    		<ul id="sousmenuA_bloc" style="display:none;">
            	<li><a href="#">Menu_A1</a></li>
            	<li><a href="#">Menu_A2</a></li>
            	<li><a href="#">Menu_A3</a></li>
            	<li><a href="#">Menu_A4</a></li>
    		</ul>
    	</div> 
            
    	<div id="contenu" style="position:absolute; top:0px;">
            <ul id="sousmenuB_bloc" style="display:none;">
            	<li><a href="#">Menu_B1</a></li>
            	<li><a href="#">Menu_B2</a></li>
            	<li><a href="#">Menu_B3</a></li>
            	<li><a href="#">Menu_B4</a></li>
            </ul>
    	</div>
        
    </div><!--FIN sousmenus-->
    


    Au cas ou, les <ul> avec un id "sousmenu_bloc", c'est pour un autre javascript (ça sert à afficher le bon sous-menu en fonction de la rubrique choisie)

    Et voici mon problème ! :


    Si vous essayez ce code, vous verrez que seulement le premier sous-menu est "scrollable"
    Le second ne fonctionne pas (et les suivants non plus, mais pour l'exemple, j'en ai mis que 2)!
    Je me suis dis que c'était peut-etre une histoire de id (j'avais lu une fois dans le cours de M@teo21 html/css que les id n'était fait pour être utilisé qu'une fois, contrairement aux class).

    J'ai essayé ceci, mais sans succès: :(
    var Objet=document.getElementById(ID+"_scroll");
    
    (1ere ligne de la fonction)
    ..et dans ma page html:

    <div id="contenua_scroll" style="position:absolute; top:0px;">
    ...
    <div id="contenub_scroll" style="position:absolute; top:0px;">
    ...
    


    ...Voila, comme j'y connais quasi que dalle sur le javascript, j'espère qu'une âme charitable arrivera à me répondre (mais je n'en doute pas :D:D:p )

    Merci beaucoup !
    et bon appétit...
    • Partager sur Facebook
    • Partager sur Twitter
      26 octobre 2008 à 16:52:22

      UP
      Vraiment personne ne sait ?? :euh:;)
      Merci
      • Partager sur Facebook
      • Partager sur Twitter
        26 octobre 2008 à 17:02:05

        A quel endroit/moment ta fonction moveLayer est-elle appelée ?
        • Partager sur Facebook
        • Partager sur Twitter
          26 octobre 2008 à 17:31:04

          <img title="Voir plus bas" onMouseOver="moveLayer(-1);" onMouseOut="clearTimeout(Timer);" src="interface/principal/flechebas.png" />
          <img title="Remonter" onMouseOver="moveLayer(1);" onMouseOut="clearTimeout(Timer);" src="interface/principal/flechehaut.png" />
          


          ...c'est donc au survol d'une image, mais à mon avis, le problème ne vient pas d'ici.
          Merci :D

          (je viens de commencer à lire le tuto de ZoZor sur le JS. Je commence à comprendre ce que je mets dans mes pages ! ça fait du bien :p:p:p;) J'en suis justement aux function. Peut-être même que j'arriverais à trouver la solution tout seul ^^ ! )
          • Partager sur Facebook
          • Partager sur Twitter

          "Ciblage" avec ID

          × 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