IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Declenchement d'evenement avec delai


Sujet :

JavaScript

  1. #1
    Membre confirmé Avatar de messier79
    Homme Profil pro
    Inscrit en
    Avril 2003
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 124
    Par défaut Declenchement d'evenement avec delai
    Bonjour
    J'ai une liste sur laquelle j'applique plusieurs evenement onmouseover et onmouseout.
    Le resultat est une sorte d'accordeon avec changement de couleur au survol d'un element.

    Le probleme est que, si je passe plusieurs fois, rapidement, sur la liste, je me retrouve avec un clignotement general, jusqu'a ce que tous les evenements soient traites.

    Pour eviter ce comportement, je voudrais declencher l'appel a l'evenement onmouseover que si la souris reste plus de x millisecondes sur l'element.
    J'ai un peu regarde du cote de l'event handler JavaScript, mais sans grand succes pour le moment...

    Quelqu'un a-t-il une idee ?
    Merci

  2. #2
    Membre Expert
    Avatar de gwyohm
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2007
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 925
    Par défaut
    Regarde du coté de setTimeout et clearTimeout

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    sinon un flag boolean qui se met à true sur le mouseover et se remet à true en fin de traitement ... et un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (flag){return false}
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre confirmé Avatar de messier79
    Homme Profil pro
    Inscrit en
    Avril 2003
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2003
    Messages : 124
    Par défaut
    Bonjour
    Merci pour la reponse. Meme si ca n'a pas suffit, ca m'a donne une idee.
    J'utilise bien un flag, mais dans ma situation, il y a toujours un bug.
    Pour resoudre mon probleme, j'ai fait en sorte que le traitement de l'evenement ne soit declenche que x ms apres le survol, et, si la souris n'ets plus sur l'element apres ce delai (d'ou l'interet du flag), je ne fais rien.

    Voila la fonction utilisee pour mettre le traitement en pause :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function pause(delay){
    	var date = new Date();
    	var curDate = null;
     
    	do { curDate = new Date(); }
    	while(curDate-date < delay);
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#2.0] Declenchement d'evenement perso
    Par chnew dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/02/2006, 20h07
  2. [C#][2.0]Declencher un evenement d'un usercontrol
    Par chnew dans le forum Windows Forms
    Réponses: 3
    Dernier message: 13/02/2006, 16h42
  3. [C#] déclencher un évènement à partir d'une page
    Par luimême dans le forum ASP.NET
    Réponses: 1
    Dernier message: 07/12/2005, 17h01
  4. [C#] Déclencher un évènement lorsque je ferme la fenêtre
    Par FoxDeltaSierra dans le forum ASP.NET
    Réponses: 4
    Dernier message: 09/08/2005, 18h54
  5. Evenement avec changement d'enregistrement
    Par SegmentationFault dans le forum Bases de données
    Réponses: 4
    Dernier message: 13/08/2004, 15h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo