2010-08-03 8 views
1

J'ai besoin de savoir quelles classes spécifiques l'ancre (qui a déclenché la fancybox) doit faire plus d'action avec la fonction "onComplete". Comment obtenir le déclencheur en tant que jQuery-Object?Comment obtenir le déclencheur d'une Fancybox?

$ (this) fait référence à la fancybox elle-même sans lien avec le trigger original.


Solution:

$('a.fancybox').click(function(e){ 
    e.preventDefault(); 
    var trigger = $(this); 
    $.fancybox({ 
     'href' : this.href, 
     'onComplete' : function() { 
      if (trigger.hasClass('specific_class')) { 
       //do something 
      } else { 
       //do something else or nothing 
      } 
     } 
    }); 
}); 

Répondre

1

Essayez quelque chose comme:

$("a").click(function(){ 
     var trigger = this; 
     $.fancybox({ 
      href : this.href, 
      onComplete : function() { 
       if ($(trigger).is(".someClass")) { 
        // ... 
       } 
      } 
     }); 
    }); 
+0

fonctionne comme un charme, seule chose à ajouter est un event.preventDefault() afin que le navigateur ne suit pas le lien. Merci! – Tim