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 :

Scopage avec JQuery et SimpleModal


Sujet :

jQuery

  1. #1
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut Scopage avec JQuery et SimpleModal
    Bonjour,

    J'ai un problème avec le bout de code suivant :

    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
    $(document).ready(function () {	
     
    	for (var m in modals) {
    		var formName = "#contactForm a."+modals[m]["id"];
    		$(formName).click(function (e) {																									
    			e.preventDefault();
    			alert($(this).attr("class")); 
    			$.get(modals[$(this).attr("class")]["mod_url"], function(data){
    				$(data).modal({
    					close: false,
    					position: ["15%"],
    					overlayId: 'contact-overlay',
    					containerId: 'contact-container',
    					onOpen: contacts[$(this).attr("class")].open,
    					onShow: contacts[$(this).attr("class")].show,
    					onClose: contacts[$(this).attr("class")].close
    				});
    			});
    		});
    	}
     
    	// preload images
    	var img = ['cancel.png', 'form_bottom.png', 'form_top.png', 'loading.png', 'send.png'];
    	$(img).each(function () {
    		var i = new Image();
    		i.src = 'images/modals/' + this;
    	});
    });
    Et plus particulièrement avec les 3 lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    				onOpen: contacts[$(this).attr("class")].open,
    					onShow: contacts[$(this).attr("class")].show,
    					onClose: contacts[$(this).attr("class")].close
    En effet, étant donné que je suis dans une déclaration de fonction sur le retour du $.get de JQuery mon contexte $(this) n'existe plus et je n'arrive pas à trouver un moyen de paramétrer mon appel $(data).modal().

    Quelqu'un aurait une idée ?

    Merci d'avance !

  2. #2
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    J'ai trouvé ma solution :

    un simple eval() faisait l'affaire :

    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
    30
    31
     
    $(document).ready(function () {	
     
    	for (var m in modals) {
    		var formName = "#contactForm a."+modals[m]["id"];
    		$(formName).click(function (e) {																									
    			e.preventDefault();
     
    			eval(
    				"$.get(modals[\""+$(this).attr("class")+"\"][\"mod_url\"], function(data){"+
    				"	$(data).modal({"+
    				"		close: false,"+
    				"		position: [\"15%\"],"+
    				"		overlayId: 'contact-overlay',"+ 
    				"		containerId: 'contact-container',"+
    				"		onOpen: contacts[\""+$(this).attr("class")+"\"].open,"+
    				"		onShow: contacts[\""+$(this).attr("class")+"\"].show,"+
    				"		onClose: contacts[\""+$(this).attr("class")+"\"].close"+
    				"	});"+
    				"});"
    			);
    		});
    	}
     
    	// preload images
    	var img = ['cancel.png', 'form_bottom.png', 'form_top.png', 'loading.png', 'send.png'];
    	$(img).each(function () {
    		var i = new Image();
    		i.src = 'images/modals/' + this;
    	});
    });
    Voilà merci quand même :-)

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

Discussions similaires

  1. [jQuery]Commencer avec JQuery
    Par Axiol dans le forum jQuery
    Réponses: 2
    Dernier message: 11/06/2008, 16h29
  2. controle d'un champ e_mail avec Jquery
    Par ranell dans le forum jQuery
    Réponses: 3
    Dernier message: 23/05/2008, 09h57
  3. Réponses: 6
    Dernier message: 22/04/2008, 18h29
  4. [js]problèmes avec jquery
    Par pomgnon dans le forum jQuery
    Réponses: 3
    Dernier message: 30/03/2007, 20h47
  5. [JQUERY] Comment appeler une fonction php avec jquery
    Par popogendarme dans le forum jQuery
    Réponses: 1
    Dernier message: 20/03/2007, 16h07

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