
      /*fonction d'initialisation du scroll sur un élément
         La fonctionne se lance ainsi : 
          initScroll(ElementId, increment, timer, direction, ismouseover)
          ElementId : correspond à l'identifiant de l'élément visé
          increment : nombre de pixels que le block avance
          timer : durée en millisecondes avant la prochaine incrémentation (avancement)
          direction : direction du bloc : 
                      -TB : Top to Bottom, du haut vers le bas
                      -BT : Bottom to Top, du bas vers le haut
                      -LR : Left to Right, de la gauche vers la droite
                      -RL : Right to Left, de la droite vers la gauche
          ismouseover : arrêt du défilement lors du passage de la souris
                        true : action avec souris
                        false : aucune action avec souris
       
          exemple : 
             -initScroll("monbloc", 2, 20, "tb");
             -initScroll("mesnews", 1, 30, "lr");
             
       
         la fonction scrollElement est la fonction qui est appelée successivement, pour faire avancer le scroll.
         la fonction initScroll sert à créer et initialiser le block avec qu'il puisse faire du scrolling.
         sous Opera, le scroll ne fonction que si les scroller sont visible (overflow:auto), avec overflow:hidden 
         le scroll ne fonctionnera pas sous Opera

         Vous pouvez à tout moment arrêter le scroll sur un bloc ou le relancer.
         il vous suffit pour cela de faire un clearInterval(lenomdemonblockTimer)
         le nom de la variable qui est lancée par setInterval, est constitué de l'id du bloc suivi du mot Timer
         ex : blocktoscrollTimer
         et vous pouvez à tout moment relancer la fonction par un setInterval de cette manière : 
         var monTimer = setInterval('scrollElement("iddemonElement", 10, "tb"', 30);
         
         la fonction scrollElement se lance avec les parametre ElementId, increment, direction.
         
         Attention aux valeurs que vous choisissez, dans l'increment, vous pouvre mettre des valeurs de 1 à 5, c'est largement suffisant
         et pour le timer, mettez des valeurs de 10 à 100, c'est une bonne fouchette
         
                  
       */  
      
      function initScroll(EltId, increment, timer, direction, ismouseover) {
         direction = direction.toLowerCase();
         var BlockScroll = document.getElementById(EltId); //On recupere l'element
         //On rajoute les attributs dans l'élément, ça évite de se les trimballer à chaque fois
         BlockScroll.increment = increment;
         BlockScroll.timer = timer;
         BlockScroll.direction = direction;
         if (direction=="bt" || direction=="tb") { //direction verticale
            var FirstDiv = BlockScroll.insertBefore(document.createElement("div"), BlockScroll.firstChild); //On cree un DIV au debut du bloc
            var LastDiv = BlockScroll.appendChild(document.createElement("div")); //on cree un div à la fin du bloc
            FirstDiv.style.height = BlockScroll.clientHeight+"px"; //On dimensionne le premier div de la hauteur du bloc
            LastDiv.style.height = BlockScroll.clientHeight+"px"; //idem pour le dernier div
         }
         if (direction=="lr" || direction=="rl") { //direction horizontale
            BlockScroll.style.paddingLeft=BlockScroll.clientWidth;
            BlockScroll.style.paddingRight=BlockScroll.clientWidth;
            BlockScroll.style.whiteSpace="nowrap"; //On vire le retour charriot afin de présenter le texte sur une seule ligne
          }
       //Rajout des évènement sur le block
       if (ismouseover) {
          BlockScroll.onmouseover = function() { //Arrête le défilement lors du passage de la souris
             this.backupincrement = this.increment;
             this.increment=0;
          }
          BlockScroll.onmouseout = function() {
             this.increment=this.backupincrement;
          }
       }
       eval('var '+EltId+'Timer = setInterval("scrollElement(\'"+ EltId + "\')",timer);'); //On lance la fonction qui va initialiser le scroll
       
       
       
       }
       
       function scrollElement(eltId) {
       
          var BlockScroll = document.getElementById(eltId);
          with (BlockScroll) {

             switch(direction) {
                 case "bt":
                    scrollTop += increment;
                    if (scrollTop+clientHeight>=scrollHeight) { scrollTop=0};
                    break;
                 case "tb":
                    scrollTop -= increment;
                    if (scrollTop<=increment) { scrollTop=scrollHeight};
                    break;
                 case "rl": 
                    scrollLeft += increment;
                    if (scrollLeft+clientWidth>=scrollWidth) scrollLeft=0;
                    break;
                 case "lr": 
                    scrollLeft -= increment;
                    if (scrollLeft<increment) scrollLeft=scrollWidth;
                    break;
             }
          }
       } 
    
       window.onload=function() {
         initScroll("blocktoscroll", 2, 100, "bt", true);
       }