événement permanent

Résolu
arnaultp Messages postés 29 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 25 juillet 2007 - 20 juin 2007 à 15:49
zuff Messages postés 79 Date d'inscription lundi 28 octobre 2002 Statut Membre Dernière intervention 21 octobre 2008 - 22 juin 2007 à 10:31
Bonjour à tous!
J'ai repris un script ici même qui représente une sorte de manège avec des icones. Ce script m'intéressant bien, j'ai voulu l'améliorer pour qu'il tourne sur un des côtés selon la position de la souris (et cela à tout moment).
Ainsi le problème que je rencontre est au niveau de l'événement. En effet, avec un événement, qui est ponctuel, je ne peut effectuer qu'une action ponctuelle...

voici mon script (pour l'instant déclenché par le chargement de la page)

<!--
//images du manège
var pict=["google.png",
    "ejs.gif",
    "Agenda2.PNG",
    "barre.jpg",
    "BdEtude2.PNG",
    "Frais2.PNG"];
//lien des vignettes dans l'ordre des images ci dessus
var lien=["http://google.fr",
    "http://editeurjavascriptfr.com",
    "http://google.fr",
    "http://google.fr",
    "http://google.fr",
    "http://google.fr"];
var angle 0, ll, hh, bcl, vit 0.05;
//taille des vignettes
var taille = 40;
//largeur de tout le manège
var largeur = 25*pict.length;
//hauteur de tout le manège
var hauteur = 40;
//position horizontale de la souris
var largeurSouris = 0;
//largeur de l'écran
var largeurEcran = 0;

//fonction qui récupère la largeur de l'écran et l'affecte à une varaible globale
function recupererLargeurEcran()
{
    if (document.body)
    {
        largeurEcran = (document.body.clientWidth);
    }
    else
    {
        largeurEcran = (window.innerWidth);
    }
}

//fonction qui récupère la position horizontale de la souris et l'affecte à une varaible globale
function recupererPositionSouris(e) // On ne s'intéresse qu'à la position horizontale
{
    if (!e) var e = window.event;
    if (e.pageX || e.pageY)
    {
        largeurSouris = e.pageX;
    }
    else if (e.clientX || e.clientY)
    {
        largeurSouris = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
    }
}

//fonction de démarrage
function window_onload(e)
{
    for( i=1 ; i"
    }
   
    return faireTourner(e);
}

// fonction qui fait tourner la chaine selon la position de la souris sur la page
function faireTourner(e)
{
    recupererLargeurEcran(); // j'appelle ma fonction pour qu'elle récupère la taille de l'écran et l'enregistre dans ma variable globale associée
    
    recupererPositionSouris(e);// j'appelle ma fonction pour qu'elle récupère la position horizontale
de la souris et l'enregistre dans ma variable globale associée
   
    while ( largeurSouris < largeurEcran/2 )// si la souris est à gauche, la chaine bouge à gauche
    {
        moveLeft();
        recupererLargeurEcran();
    }
   
    while (  largeurSouris >= largeurEcran/2 )// si la souris est à droite, la chaine bouge à droite
    {
        moveRight();
        recupererLargeurEcran();
    }
}

// permet de faire tourner la chaine vers la droite
function moveRight()
{
    ll = document.body.clientWidth/2;
    hh = document.body.clientHeight/2;
    angle = angle-vit;
   
    for( i=1 ; i

Merci d'avance pour votre aide

1 réponse

zuff Messages postés 79 Date d'inscription lundi 28 octobre 2002 Statut Membre Dernière intervention 21 octobre 2008
22 juin 2007 à 10:31
suite à ta demande j'ai fait un nouveau menu qui tourne plus ou moins vite suivant où se trouve la souris dans la page : http://www.javascriptfr.com/code.aspx?ID=43216
3
Rejoignez-nous