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 :

Une action retardée sur un div


Sujet :

JavaScript

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut Une action retardée sur un div
    Bonjour,

    J'ai ce code sur un div, mais il ne fonctionne pas. Le truc c'est que j'aimerais déclencher un action quand j'utilisateur n'est plus sur le div après 1 seconde, mais si il reviens sur le div avant 1 seconde, l'action ne doit pas s'enclencher, mais ça marche pas, il me dit qu'il connait pas "timer"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="menu_primaire" class="div_menu_primaire" OnMouseOut='javascript : timer = setTimeout("fermeture_menu_primaire()", 1000);' OnMouseOver='clearTimeout(timer);'></div>
    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OnMouseOut='javascript : var timer = set...
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  3. #3
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 289
    Points
    3 289
    Par défaut
    Citation Envoyé par siddh
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OnMouseOut='javascript : var timer = set...
    +1
    PS : ATTENTION A LA CASSE DES EVENTS PAR PITIE... et aux convention HTML... le ":" doit se trouver IMMEDIATEMENT après l'introduction de type (http;ftp;javascript;about;...) + attributs avec des "

    Pour reprendre la partie de code de siddh :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onmouseout="javascript:var timer = set...
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  4. #4
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    Ben même avec ça il me fait toujours la même erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="menu_primaire" class="div_menu_primaire" onmouseout='javascript:var timer = setTimeout("fermeture_menu_primaire()", 1000);' OnMouseOver='javascript : clearTimeout(timer);'></div>
    'timer' est indéfini

  5. #5
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    le probleme est que tu créé le timer sur le out alors que le over sera toujours executé avant ...
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  6. #6
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    Ah ok, mais je pourrais faire comment pour controler si le timer existe avant de le supprimer??? Merci beaucoup pour ton aide

  7. #7
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  8. #8
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    ben ça marche pas, il me marche toujours 'timer' est indéfini, et il m'indique la ligne de ma condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(timer)
    {
    alert("test");
    }

  9. #9
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  10. #10
    Membre actif Avatar de Cpas2latarte
    Inscrit en
    Janvier 2006
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 237
    Points : 255
    Points
    255
    Par défaut porté de variable ?
    il y a peut être un problème de porté de variable ?
    La variable timer n'est peut défini que dans la fonction de l'evenement.

    Faut peut $etre essayer de la metre en global
    par ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    window.montimer = ...
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if(window.montimer)
    {
    alert(window.montimer);
    }
    Il n'y a que 2 choses infinies dans le monde :
    L'univers et la bétise humaine...
    Mais pour l'univers, je n'ai pas de certitude (A.E.)

  11. #11
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    c est une solution effectivement mais il faudra quand meme tester si la variable est null ou pas
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  12. #12
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    ouai, c'est parfait, merci infiniment. Tout fonctionne à merveille.

    Merci encore et bonne soirée

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

Discussions similaires

  1. déclencher une action seulement sur clic de "action"
    Par laurentSc dans le forum Langage
    Réponses: 1
    Dernier message: 24/09/2011, 23h02
  2. [1.x] Ajouter une action.class sur un layout pour personalisé le menu
    Par megaloplex dans le forum Symfony
    Réponses: 3
    Dernier message: 09/06/2010, 17h08
  3. Réponses: 3
    Dernier message: 05/08/2008, 11h17
  4. Script qui effectue une action automatiquement sur serveur
    Par poitierjohan dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/04/2008, 00h09
  5. Réponses: 3
    Dernier message: 10/07/2007, 13h53

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