var x_pos;
var y_pos;
var move;
var Mouse_X;
var Mouse_Y;
 
 
function WhereMouse( e ){
  var DocRef;    // Variable pour IE uniquement
 

  // L'événement est passée à la fonction
  // donc tous sauf IE?
  if( e){                     // Dans ce cas on obtient directement la position dans la page
    Mouse_X = e.pageX;
    Mouse_Y = e.pageY;
  }
  else{                      // Dans ce cas on obtient la position relative à la fenêtre d'affichage
    Mouse_X = event.clientX;
    Mouse_Y = event.clientY;
 

    //-- Il faut traiter le CAS des DOCTYPE sous IE
    if( document.documentElement && document.documentElement.clientWidth) // Donc DOCTYPE
      DocRef = document.documentElement;   // Dans ce cas c'est documentElement qui est réfèrence
    else
      DocRef = document.body;                    // Dans ce cas c'est body qui est réfèrence
 
    //-- On rajoute la position liée aux ScrollBars
    Mouse_X += DocRef.scrollLeft;
    Mouse_Y += DocRef.scrollTop;
  }
}

// gestion du carousel
function move_carousel(direction,id_carousel) //
{
    x = Mouse_X;
    y = Mouse_Y;
 
   	var isRepeat;
    // position et taille carousel
   
    var carousel=document.getElementById(id_carousel);
    mytop = carousel.offsetTop;
    tempEl = carousel.offsetParent;
   while (tempEl != null)
      {
      mytop += tempEl.offsetTop;
      tempEl = tempEl.offsetParent;
      }
    myh= carousel.offsetHeight;
    myleft= carousel.offsetLeft;
    tempEl = carousel.offsetParent;
   while (tempEl != null)
      {
      myleft += tempEl.offsetLeft;
      tempEl = tempEl.offsetParent;
      }
    myw= carousel.offsetWidth;
   
    // si souris hors carousel on sort
    if ( x<myleft || x>(myleft+myw) || y<mytop || y> (mytop+myh) )
      {
      clearTimeout(isRepeat);
      return;
      }
      
          // zone neutre = milieu de carousel
          zone_neutre = myleft + myw * 0.5;
         
          // calcul ecart souris / zone neutre
          ecart_px = x-zone_neutre;
         
          // bornes en %
          my_w1=30;
          my_w2=55;
          my_w3=90;
         
         // déplacements en pixel
          d12=2;
          d23=5;
          d3=10;
         
          // delta x sur images de souris
          dx=  x - myleft;
         
          // ecart en %
          ecart= ecart_px * 100 / (myw * 0.5);
         
                 
          // Gestion déplacement carousel / souris
        
            
          if (ecart>=my_w1 && ecart < my_w2)  //
            {
            carousel.scrollLeft=carousel.scrollLeft+ d12;
            }
         
           if (ecart>=my_w2 && ecart < my_w3)  //
            {
            carousel.scrollLeft=carousel.scrollLeft+ d23;
            }
           if (ecart>=my_w3)  //
            {
            carousel.scrollLeft=carousel.scrollLeft+ d3;
            }
          if (ecart<=-my_w1  && ecart > -my_w2)  //
            {
            carousel.scrollLeft=carousel.scrollLeft- d12;
            }
          if (ecart<=-my_w2 && ecart > -my_w3)  //
            {
            carousel.scrollLeft=carousel.scrollLeft- d23;
            }
          if (ecart<= -my_w3 )  //
            {
            carousel.scrollLeft=carousel.scrollLeft - d3;
            }
          if (ecart> -my_w1  && ecart<my_w1)  // on fait rien
            {
            clearTimeout(isRepeat);
            }


    // on relance la function
    isRepeat = setTimeout("move_carousel('"+direction+"','"+id_carousel+"')",150);
 
}