2011-01-06 2 views
0

onComplete 정의에서 볼 수 있듯이 현재 실행중인 특정 DIV의 HTML에 액세스하려고 시도하지만 클래스에 의해 바인드 호출이 수행됩니다. DIV를 모두 동일한 클래스에 여러 개 바인딩하면 올바르게 바인딩됩니다. 즉, ".opener"앵커를 클릭하면 적절한 내용이 팝업됩니다. 그러나 onComplete 함수에서 해당 내용에 액세스하는 방법을 알아낼 수는 없습니다. 처음 실행되는 것과 관계없이 매번 첫 번째 ".opener"를 반환하기 때문입니다. 어떤 아이디어?Fancybox : 같은 클래스를 가진 여러 DIV를 바인딩하지만 어떻게 onComplete 함수에서 개별적으로 액세스 할 수 있습니까?

initFancyBox: function() { 
    //ie hack for fancy box 
    if ($(".dialog").length > 0 || $(".imageDetail").length > 0) { 
     $(".opener").fancybox({ 
      'titlePosition': 'inside', 
      'transitionIn': 'none', 
      'transitionOut': 'none', 
      'type': 'inline', 
      'onComplete': function(){ 
       alert($(".opener").parent().html());      
      } 
     }); 
    } else { 
     $(".opener").fancybox({ 
      'titlePosition': 'inside', 
      'transitionIn': 'none', 
      'transitionOut': 'none', 
      'type': 'image' 
     }); 

    } 
} 
+0

[Fancybox : 클릭 앵커/요소의 ID를 가져]의 중복 가능성 (HTTP : //stackoverflow.com/questions/2961496/fancybox-get-id-of-clicked-anchor-element) – BigOmega

답변

1

당신이 선택에서 항목 각각에 대해 뭔가를하고 싶은 경우에, 같은 것을 사용해보십시오 :

$('.opener').each(function() 
{ 

}); 
관련 문제