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 :

onclick et ondblclick sur m�me �l�ment : le premier est appel� lors du double clic


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de skeud
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Billets dans le blog
    1
    Par d�faut onclick et ondblclick sur m�me �l�ment : le premier est appel� lors du double clic
    Bonjour, j'ai un td qui poss�de deux attribut:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    onclick="alert('simple click');"
    et
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    ondblclick="alert('double click');"
    Je suis sous ie 7 (�videmment c'est ma boite qui choisis ce navigateur pas moi) et l��v�nement onclick est appel� lors du double clique.

    Ma question: comment faire pour que seul l��v�nement ondblclick soit appel� lors d'un double clic ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Une tempo sur l'effet du simple click ? ^^
    Du genre :

    HTML :
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    <button onclick="click_simple()" ondblclick="click_double()">
    (en supposant un bouton par exemple mais �a n'a bien s�r pas d'importance pour le probl�me pos�)

    JS :
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    var meche;// pour la métaphore... allumer/éteindre la mèche ^^
    function click_simple() {
       if (!meche)// pour ne pas lancer la fonction en doublon/triplon/etc.
          meche = setTimeout(function() {
             alert("simple clic");
          }, 500);// une demi-seconde par exemple mais à ajuster probablement
       }
    }
     
    function click_double() {
       if (meche) clearTimeout(meche);// pschit.
       alert("double clic");
    }

  3. #3
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Bonjour,
    Citation Envoy� par skeud
    Je suis sous ie 7 (�videmment c'est ma boite qui choisis ce navigateur pas moi) et l'evenement onclick est appel� lors du double clique.
    ce le m�me probl�me sur TOUS les navigateurs.

    Attention
    � l'effet pervers d'un dbclick qui n'est autre que 2 simples click, la fonction mise sur le simple click peut �tre appel� 2 fois, il convient donc de bloquer celle ci.

    Je te propose une petite variante, le principe �tant le m�me que celui d'�crit par RomainVALERI
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <!DOCTYPE html>
    <html>
    <head>
    <title>[...]</title>
    <script type="text/javascript">
    var iTimer, bDouble;
    function fctClick(){
      bDouble = false;
      iTimer = setTimeout( function(){
        if( !bDouble){
          alert( 'fctClik');
        }
      }, 250);
    }
    function fctDbClick(){
      bDouble = true;
      clearTimeout( iTimer);
      alert( 'fctDbClik');
    }
    </script>
    </head>
    <body>
    <div style="border:1px solid black; width:200px; height:50px;"
      onclick = "fctClick();"
      ondblclick = "fctDbClick();">
      Test
    </div>
    </body>
    </html>
    Derni�re petite remarque, ce n'est quand m�me pas tr�s ergonomique que de mettre un onclick et ondbclick sur un m�me �l�ment!

  4. #4
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    [variante propos�e par NoSmoking]
    Oui, je pense que techniquement il est plus souhaitable de ne g�rer qu'un seul �v�nement (ici le clic) j'aime bien l'am�lioration propos�e.
    Citation Envoy� par NoSmoking Voir le message
    Derni�re petite remarque, ce n'est quand m�me pas tr�s ergonomique que de mettre un onclick et ondbclick sur un m�me �l�ment!
    Je n'y avais pas pens� spontan�ment mais je suis l� aussi d'accord avec NoSmoking ^^

    Il y a quelques contextes qui peuvent justifier (au moins partiellement) ce choix mais c'est rare... (sur mobile, vu le manque d'espace disponible peut-�tre ? et encore... le double clic tactile... je n'ai pas de smartphone mais rien que l'id�e me glace d'effroi )

  5. #5
    Membre Expert
    Avatar de skeud
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Billets dans le blog
    1
    Par d�faut
    Merci pour vos r�ponses, mais finalement j'ai solutionn� mon probl�me, en fait la probl�matique �tait la suivante:

    J'avais une case de tableau qui devait se colorer en vert lors du clique (pour signaler une personne pr�sente) et en rouge lorsque cette personne n'est pas pr�sente.
    Je voulais donc lors du clic: personne pr�sente.
    Lors du doubleclick:personne non pr�sente.

    En fait j'ai fait avec php, un flag qui varie suivant si la personne est pr�sente ou non, donc juste un click qui changera une valeur dans la bdd

    Je garde quand m�me vos r�ponses, on sait jamais, �a peut servir

    Merci encore et d�soler du d�rangement, mais comme souvant, c'est en postant notre probl�me sur dvp qu'on trouve la solution par nous m�me

  6. #6
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par skeud Voir le message
    Merci encore et d�soler du d�rangement, mais comme souvant, c'est en postant notre probl�me sur dvp qu'on trouve la solution par nous m�me
    Oui, ne t'inqui�te pas, nous avons tous d'ores et d�j� accept� de partager ce destin fac�tieux avec les cur�s, les psychanalystes et aujourd'hui m�me les "coaches"...

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 2
    Dernier message: 04/06/2015, 11h02
  2. [AC-2003] Message d'erreur lors du double clic sur un graphique
    Par ostrich95 dans le forum IHM
    R�ponses: 3
    Dernier message: 26/05/2014, 15h49
  3. 2 ondblclick sur une m�me ligne, en cours circuiter 1
    Par lodan dans le forum G�n�ral JavaScript
    R�ponses: 6
    Dernier message: 20/06/2008, 14h00
  4. travaillez sur des �l�ment ayant le m�me id
    Par pierreonxbox dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 07/06/2007, 17h29
  5. onclick sur deux �l�ments superpos�s et IE6
    Par sovitec dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 27/12/2005, 13h56

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