Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/07/2011, 02h24   #1
Candidat au titre de Membre du Club
 
Inscription : janvier 2011
Messages : 56
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 56
Points : 13
Points : 13
Par défaut dispatcher un evenement

Bonsoir à tous,

J'aimerais savoir si il existe une facon de dispatcher un événement perso comme dans actionscript

exemple en actionscript (avec un code tres epurer, c'est juste pour vous montrer ou je veux en venir):

une classe nommé bouton
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package
{
...
public class Bouton extends MovieClip
{
...
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher;
...
static public var DELETE_MOVIECLIP:String = "Delete MovieClip";
...
public function deleteMc():void 
{
	dispatchEvent(new Event(DELETE_MOVIECLIP));
}
...
}
}
un autre fichier ou j' appel mon bouton et mon événement perso

Code :
1
2
3
4
var monBouton:Bouton = new Bouton();
...
monBouton.addEventListener(Bouton.DELETE_MOVIECLIP,effacerBouton);
...
Y aurait-il moyen de faire pareil en JavaScript ou jquery?
Cependant l’événement que je doit dispatcher en JavaScript ne fait pas partie d'une classe mais d'un script.

je lance donc une fonction du script
Code :
1
2
3
4
initAutoComplete(document.getElementById('form_groupe'), 
					 document.getElementById('G_groupe'), 
					 document.getElementById('submit_groupe'),
					 "groupe");
cette fonction va grâce a d'autres fonctions dans ce script générer un choix de mot sur lequel je pourrai cliquer j'aimerai à ce moment la sortir du script et lancer une seconde fonction à la même hauteur que "initAutoComplete" c'est a dire de la même manière que l'exemple de flash au début de ce poste

Merci d'avance pour votre aide
healou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 02h41   #2
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonsoir

ActionScript ? Flash ? Je sais seulement que cela existe, c'est tout. J'ai dû écrire le code d'une bannière flash il y a un siècle.

En jQuery on peut créer des événements personnels, API :http://api.jquery.com/category/events/event-object/

Voir aussi : http://danielhagnoul.developpez.com/.../evenement.php
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 05h08   #3
Candidat au titre de Membre du Club
 
Inscription : janvier 2011
Messages : 56
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 56
Points : 13
Points : 13
merci pour ta réponse

donc en gros si j ai bien compris
Il faut créer un objet.

Citation:
On attend un événement :
$(this).bind("allumeEvent", allumeEventHandler);
On crée un nouvel événement :
var monEvent = new $.Event("allumeEvent");
On déclenche l’événement :
$(this).trigger(monEvent);
On consomme l’événement dans la fonction
allumeEventHandler(event){…};
serait tu me dire comment je peux m'y prendre pour transformer le contenu du script en objet? y a t il une manipulation spéciale à faire?
car ds l’état actuel, même si je place la fonction dans une variable, je ne pourrai appeler un événement qui se trouve dans une autre fonction, vu qu'elle ne constitue pas un ensemble.

(je suis novice en javascript, 2 mois d’expérience ^^ et de plus je suis habituer a l'orienté object, ce qui fait que j'ai un peu de mal avec javascript xD)
healou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 09h43   #4
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

Je ne comprends pas bien la question.

On est en JavaScript (jQuery c'est du JavaScript) qui malgré son nom a très peu à voir avec Java. JavaScript c'est de l'orienté-objet par prototype (lorsque l'on vient d'un langage purement objet c'est assez déroutant), tout est objet en JS, et tout est modifiable à tout moment par n'importe qui.

Pour le cas qui nous occupe, c'est de la gestion d'événement. Les différentes parties du code peuvent se trouver dans des endroits différents, la seule contrainte c'est que la méthode bind() doit pouvoir appeler ou contenir (function(){ le code } au lieu du nom de la fonction) la fonction qui sait quoi faire (allumeEventHandler) avec l'événement.

Si vous n'y arrivez pas, le mieux est de poster vos codes (HTML, CSS, JS) ou de donner un lien vers votre page de test afin que je puisse voir la même chose que vous.
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h10.


 
 
 
 
Partenaires

Hébergement Web