JeuWeb - Crée ton jeu par navigateur
unbind un event précis en jquery? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : unbind un event précis en jquery? (/showthread.php?tid=5438)



unbind un event précis en jquery? - Argorate - 19-05-2011

Salutation la compagnie, j'aurais besoin d'un petit renseignement.

Admettons que je fasse:

$(toto).bind('click', function(){tralalala});
$(toto).bind('click', function(){pouet});

Comment distinguer les deux? Si je veux unbind le deuxième sans enlever le premier (ou l'inverse, peu importe), comment faire?

si je fais $(toto).unbind('click'), j'imagine qu'il va m'enlever les deux (normal...).
D'où mon problème: donc y a t-il un moyen de rendre les bind nominatif?
Avez-vous une solution a proposer?

Merci.


RE: unbind un event précis en jquery? - ToraTora - 19-05-2011

Salut,

la réponse est dans la doc :

Citation :Using Namespaces

Instead of maintaining references to handlers in order to unbind them, we can namespace the events and use this capability to narrow the scope of our unbinding actions. As shown in the discussion for the .bind() method, namespaces are defined by using a period (.) character when binding a handler:

$('#foo').bind('click.myEvents', handler);

When a handler is bound in this fashion, we can still unbind it the normal way:

$('#foo').unbind('click');

However, if we want to avoid affecting other handlers, we can be more specific:

$('#foo').unbind('click.myEvents');

Source : http://api.jquery.com/unbind/


RE: unbind un event précis en jquery? - Argorate - 19-05-2011

J'en connais un qui va râler^^

Merci, ça semble presque trop facile, je vais voir ça. Wink


RE: unbind un event précis en jquery? - Sephi-Chan - 19-05-2011

Ça t'étonne ?

Peux-tu m'expliquer pourquoi tu n'es pas allé voir la documentation de la méthode unbind, juste pour voir ?

Je sais bien que tu as du mal avec l'anglais (quelle tare pour un développeur…), mais là tu savais précisément où chercher et tu peux te contenter de lire les titres et les fragments de code de la page pour passer en revue ce qui pourrait t'être utile. Plus tu le feras, plus ça deviendra facile de le faire.

Avant je croyais que tu étais de bonne foi par rapport à ta maîtrise de la langue. Mais je dégage finalement deux théories alternatives bien plus crédibles que voici :

  1. Tu es une feignasse qui aime faire chercher les autres à sa place.
  2. Tu es un idiot qui pense gagner du temps à ne pas en prendre un peu pour se documenter. Et ce malgré les nombreuses fois où cette idée s'est révélée fausse (je l'ai fais plusieurs fois et ce topic le fait également).



RE: unbind un event précis en jquery? - Argorate - 19-05-2011

On en a déjà parlé, le problème n'est pas là.
Tu oublies clairement un point crucial pour moi, dans l'histoire.

Faut faire les choses par envi, passion, amour, tourne ça comme tu veux...

Moi, allez perdre une heure (suis gentil là) à traduire une doc d'un framework en anglais ça ne m'intéresse absolument pas, ça ne me passionne pas, ça ne me motive pas, je ne m'amuse pas, c'est même plutôt barbant.
Par contre faire quelque chose de concret et lorsque j'ai une difficulté, essayer de résoudre le problème pour que ça marche, je trouve ça déjà plus intéressant et motivant, car il y a un but. Apprendre pour apprendre ne m'intéresse pas.

De plus, lire toutes la doc et au final retenir 10% du contenu ne me parait pas judicieux, c'est personnel, mais moi je pense que j'apprends mieux quand j'ai une chose a retenir après l'autre, et surtout j'ai une application concrete qui fait que non seulement je retiens mais je comprends se que je fais.

Après je comprends bien ton point de vue et je sais que tu n'adhères pas au mien... Tant mieux, ça serait chian si on était tout le temps d'accord Smile
Par contre, je n'accepterais pas qu'on dise que je fais chercher les autres a ma place. Je demande a ce qui savent déjà la réponse, c'est justement l'intérêt de l'entre aide. Après si on ne connait pas la réponse et qu'on fait exprès de chercher pour donner la réponse, je trouve ça très noble et je remercie qui de droit, mais c'est plus que je n'en demande... Wink

Bref, sujet clos pour moi.


RE: unbind un event précis en jquery? - Sephi-Chan - 19-05-2011

(19-05-2011, 10:15 AM)Argorate a écrit : Par contre, je n'accepterais pas qu'on dise que je fais chercher les autres a ma place.

Tu demandes pourtant aux gens de t'apprendre à utiliser unbind alors que ce n'est qu'une malheureuse page de documentation à survoler (et oui, même pas besoin de tout lire).

Je suis totalement pour l'entraide : sinon je n'aurais pas passé autant de temps à discuter avec toi (et bien d'autres), que ce soit par messagerie instantanée ou sur ce forum. Mais là tu tombes dans les travers de l'assistanat, qui entre aussi dans le domaine de l'entraide.

Sans parler d'apprendre pour apprendre, devenir un développeur efficace a beaucoup d'avantages. Actuellement, tu perds beaucoup de temps à aller demander à droite, à gauche, à créer des topics, à répondre à des casse-couilles comme moi. C'est bien plus long que de lire une liste de fonctions et leur court résumé et c'est du temps que tu perds sur le développement de ton jeu.

Tu n'es pas gagnant avec cette approche, et tu ne le seras jamais. Mûris un peu.






RE: unbind un event précis en jquery? - niahoo - 19-05-2011

moi j'aime bien apprendre pour apprendre. * MIAM *

oui je sais osef

ensuite, le principe d'une doc ce n'est pas de l'apprendre par coeur, c'est d'apprendre à la connaître, à chercher dedans (certaines sont meilleures que d'autres, ce ne sont pas toutes des litanies indigestes, loin de là). Et à force de revenir plusieurs fois sur les mêmes pages, ton cerveau enregistre, mais au final c'est du bonus. Le but c'est de trouver l'info, et éventuellement de la retenir.

Donc bon, sans vouloir en rajouter une couche, là tu aurais trouvé en quoi ... 3 minutes. J'ai mis plus de temps pour écrire ce post – je suis lent.