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/03/2011, 10h54   #1
Membre du Club
 
Inscription : juin 2004
Messages : 257
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 257
Points : 64
Points : 64
Par défaut plugin popup avec overlay

Bonjour,

je suis en train de mettre en place une popup avec overlay sur la page qui sera appeler à partir 'un plugin avec différents paramètres.
Dans cette fenêtre je place un bouton de fermeture,mon problème est que je n'arrive pas a faire prendre en compte l'evênement click sur le bouton de fermeture créé dynamiquement.
Voila mon code

Code :
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
  (function($){
 
	$.popup = function(params){	
		if($('#popup-overlay').length){
				$.popup.hide;				
		}
 
		_popupId        =  (params.id || 'popup-box');
		_popupTitle     =  (params.title) ? '<h3>'+ params.title + '</h3>' : '';
		_popupTitle    +=  (params.close) ? '<a id="popup-close" href="#" >close</a>' : '';
		_buttonHTML     = '';
		$.each(params.buttons,function(name,obj){		
			// Generating the markup for the buttons:			
			_buttonHTML += '<a href="#" class="button '+obj['class']+'">'+name+'<span></span></a>';			
			if(!obj.action){
				obj.action = function(){};
			}
		});
 
		var markup = [
			'<div id="popup-overlay">',
			'<div id="',_popupId,'">',
			'<div id="popupTitle">',_popupTitle,'</div>',
			'<div>',params.content,'</div>',
			'<div id="popup-buttons">',
			_buttonHTML,
			'</div></div></div>'
		].join('');
 
		$(markup).hide().appendTo('body').fadeIn();         
 
		var buttons = $('#popup-box .button'),
			i = 0;
 
    // gestion de l'action des boutons
		$.each(params.buttons,function(name,obj){
			buttons.eq(i++).click(function(){			
				obj.action();
				$.popup.hide();
				return false;
			});
		});
	}
 // NE MARCHE PAS
  $("#popup-close").click(function(){ 
 
    $.popup.hide();	
  });
 
 
	$.popup.hide = function(){
		$('#popup-overlay').fadeOut(function(){
			$(this).remove();
		});
	}
 
;
})(jQuery);
merci de votre aide
epeichette est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h23.


 
 
 
 
Partenaires

Hébergement Web