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 :

Comment annuler un effet au second click


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    330
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2009
    Messages : 330
    Par défaut Comment annuler un effet au second click
    Bonjour,

    jutilise jquery et les event pour que lors d'un click sur un <a> un element textuel soit mis en couleur.
    jutilise pour ce fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function fadeNom() {
    	$("div#phrase").each(function() {
     
    		$(this).find("span.nom").css("color", "blue");
     
    	});
    }
    $(document).ready(function() {
    $("#fadeNOM").click(function() {
    		fadeNom($(this).html());
    		}
    	});
    je voudrai qu'en recliquant sur le meme <a> l'effet soit annulé et donc concretement que lelement soit en noir.
    j'ai reussi a proceder on utilisant le dbclick mais je voudrai savoir si vous avez une méthode plus ergonomique et economique.

    merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut Un code élégant
    est toujours une source de grande satisfaction. Pour cela je me permet de te suggérer une approche qui permettra de profiter au mieux de la bibliothèque jquery. Comme dis cet adage très connu , il faut 'rendre ce qui est à César ce qui est César , et ceux qui est à jquery à jquery'. Nous allons donc utiliser la CSS ( César n'est pas disponible en ce moment ) pour le style et jquery pour les évènements :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <style>
       .cesar { color : blue}
    </style>
     
    $(document).ready(function() {
        $("#fadeNOM").click(function() {
    	       $("div#phrase").find("span.nom").toggleClass('cesar');
     
    	});
    });

    je présume que ton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $("div#phrase").each ....
    est une erreur car tu ne dois pas avoir plusieurs fois le même id dans une page.

    Concrètement l'utilisation d'une class CSS permet de laisser la feuille de style mettre du look et la fonction jquery.toggleClass() offre une méthode simple pour enlever ou mettre une class à tes sélecteurs.

    Enfin nous avons pu garder cesar ce qui n'est pas rien !!! Un empereur dans jquery , ce n'est pas banal !!!

Discussions similaires

  1. Comment annuler les effets d'une macro sur les feuilles?
    Par jolzeviking dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 30/06/2008, 14h29
  2. [c#] comment annuler l'action d'un requireValidator
    Par shams dans le forum ASP.NET
    Réponses: 3
    Dernier message: 07/07/2005, 12h03
  3. [Info]comment annuler une Externalization string?
    Par car dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 17/04/2005, 09h51
  4. Comment coder un effet de neige ?
    Par the_magik_mushroom dans le forum Langage
    Réponses: 11
    Dernier message: 17/12/2004, 23h29
  5. [VB6][impression]Comment faire des effets sur les polices ?
    Par le.dod dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 08/11/2002, 10h31

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