2012-03-15 5 views
0
ApplyClickableLinkToClass = function(selectedElements) { 
// Go through each of the passed in selections and try to apply a link to them 
$.each(selectedElements, function() { 
    var linkElement = $("a:first:not(.do-not-apply-clickable-link)", $(this)); 
    var link = linkElement.attr("href"); 
    if (!IsNullEmptyOrUndefined(link)) { 
     $(this).click(function(firstLink) { 
      var divToLink = firstLink; 
      return function() { 
       $(divToLink).unbind('click'); 
       if (divToLink.attr("target") != "_blank") { 
        window.location = link; 
        return false; 
       } 
      }; 
     }(linkElement)); 
    } 
}); 

}Pourquoi cette fonction Jquery semble ne rien faire

Je pense qu'il ouvrirait la cible dans une nouvelle fenêtre et supprimer événement click mais ne fait rien lorsqu'il est appelé, des idées?

Appelée comme suit

var clickable = function() { 
    ApplyClickableLinkToClass($j(".rc_blueBtn, .rc_whiteBtn:not(.More)")); 
    }; 
    setTimeout(clickable, 2000); 
+0

Trois questions sur le même morceau de code. Ça a l'air drôle. –

+0

162 questions et 5 réponses ... alors qu'il n'y a pas d'exigence pour répondre aux questions des autres, faire partie d'une communauté est un échange. Je suggère de donner un peu plus .. –

+0

"a: d'abord: pas (.do-not-apply-clickable-link)" ne me semble pas juste. "a: not (.do-not-apply-clickable-link): d'abord" ça devrait aller. –

Répondre

0

il y a une raison pour laquelle vous avez utilisé $ j() insted du sélecteur simple $() dans votre appel de fonction?

ApplyClickableLinkToClass($j(".rc_blueBtn, .rc_whiteBtn:not(.More)")); 
0
$(this).one("click", function() { 

ses facilement faire tout ce que vous avez besoin d'ajouter cliquez pour une seule fois, puis retirez automatiquement.

Questions connexes