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

jQuery Discussion :

Jquery obligé de faire 2 clicks


Sujet :

jQuery

  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut Jquery obligé de faire 2 clicks
    Bonjour, j'ai chercher sur Google pour détecter click droit, gauche ou milieu et c'est pas compliqué.

    Mon soucis et que je fais comme ça :

    Le html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <span onclick="enchantAtk();" id="atkMinValue">10</span>
    Et coté JS :

    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
     
                    function enchantAtk()
                    {
     
                        $('#atk').mousedown(function(event) {
                            switch (event.which) {
                                case 1:
                                    alert('Left mouse button is pressed');
                                   break;
                                case 2:
                                    alert('Middle mouse button is pressed');
                                    break;
                                case 3:
                                    alert('Right mouse button is pressed');
     
                                    break;
                                default:
                                    alert('Nothing');
                            }
                        });
    }
    Le truc c'est que je dois clické 2 fois sur mon span pour qua l'alert s'affiche.

    Quelqu'un aurais une solution pour ce petit problème ?

    CDT

  2. #2
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 418
    Par défaut
    Bonjour,

    Evite si possible l'utilisation des attributs html tel que onclick, préfères addEventListener() ou les fonctions jquery à la place.
    Attention aux sélecteurs css : id="atkMinValue" => $('#atkMinValue')

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <span id="atkMinValue">10</span>
    Code javascript : 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
    $("#atkMinValue").on("mousedown", function (event) {
      switch (event.which) {
        case 1:
          alert("Left mouse button is pressed")
          break
        case 2:
          alert("Middle mouse button is pressed")
          break
        case 3:
          alert("Right mouse button is pressed")
     
          break
        default:
          alert("Nothing")
      }
    })

  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 657
    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 657
    Billets dans le blog
    1
    Par défaut
    Ben c'est tout a fait normal vu que la première fois tu n'as pas encore attaché l'event à l'élément

    Au premier click tu attribues l'evenement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $('#atk').mousedown(function(event) {
    Du coup au second il peut se lancer ...
    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é
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut
    OK merci.

    Si je comprends bien c'est impossible d’appeler la fonction enchant() et detecter le click avec jquery ?

    Y a pas moyen de garder ma fonction tout en utilisant le onclick ?

    Est ce possible de faire sa sans a avoir cliquer 2 fois ?


    Merci

  5. #5
    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 657
    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 657
    Billets dans le blog
    1
    Par défaut
    Bien sur que si, il faut juste dissocier d'un coté la fonction
    et de l'autre l'attribution de cette fonction sur le click de l'élément

    La fonction
    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
    function enchantAtk(event){
     
                            switch (event.which) {
                                case 1:
                                    alert('Left mouse button is pressed');
                                   break;
                                case 2:
                                    alert('Middle mouse button is pressed');
                                    break;
                                case 3:
                                    alert('Right mouse button is pressed'); 
                                    break;
                                default:
                                    alert('Nothing');
                            }
     }

    l'attribution du mousedown
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $(function() {
        $('#atkMinValue').mousedown(enchantAtk);
        })
    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 !

  6. #6
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut
    Merci.

    Sujet clos.

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

Discussions similaires

  1. obliger de faire une requete HQL?
    Par tirisus dans le forum Hibernate
    Réponses: 1
    Dernier message: 09/04/2009, 22h34
  2. Réponses: 1
    Dernier message: 20/03/2008, 12h09
  3. obligé de faire confiance à l'administrateur ou non
    Par Bba_M dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 02/12/2006, 16h08
  4. Obligation de faire une réorientation
    Par gbny77 dans le forum Droit du travail
    Réponses: 1
    Dernier message: 30/11/2006, 17h39
  5. [win XP] obliger de faire actualiser
    Par Ickou dans le forum Windows XP
    Réponses: 1
    Dernier message: 09/11/2005, 22h50

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