2012-08-17 4 views
0

프로젝트에서 jquery lightbox을 사용 중입니다 ... 기본적으로 각 팝업 창의 맨 위에 제목을 추가하고 있습니다. 아웃 라이트 박스 확대 이미지. 이제 제목은 이미지가 포함 된 앵커 태그의 클래스에 따라 변경됩니다. 나는 3 개의 클래스를 가지고 있고, 각 클래스는 타이틀을위한 다른 텍스트를 가질 것이다.다른 클래스의 텍스트를 동적으로 변경 - Jquery 라이트 박스 플러그인

지금 여기의 이미지에 갈 때 당신이 볼 수 있듯이

, 라이트 애니메이션이 활성화 될 때, '내 텍스트'제목이 변경되지 않습니다 ... 내가 노력하고있어 보는 내 JSfiddle입니다 다른 a-tag 클래스 ...

어떤 제안이 있습니까? 내 JS 코드를 봐

답변

1

.is 대신 hasClass을 사용하십시오. 당신은 클래스 사이에 변경하면 실제로 상대 클래스의 썸네일을 클릭하면 작동하는 것을 볼 수 있습니다 ... JQuery와 hasClass 작동

$(function() { 
    $('#gallery a').lightBox(); 

    var A = "Text for A"; 
    var B = "Text for B"; 
    var C = "Text for C"; 
    $('#gallery').find('a').click(function(){ 



    if ($(this).haClass('classA')) { 
      $('#lightbox-title-data-span1').html(A); 
     }; 
    if ($(this).haClass('classB')) { 
      $('#lightbox-title-data-span1').html(B); 
     }; 

    if ($(this).haClass('classC')) { 
      $('#lightbox-title-data-span1').html(C); 
     }; 



     }) 

});​ 
+0

감사합니다 부울 유형,하지만 나머지 한 가지 문제가있다 (즉, 당신이 무슨이다 정의 된 권리). 그러나 라이트 박스를 사용하여 이미지를 페이징하는 다음/이전 기능/버튼을 사용하면 클래스간에 변경되지 않고 한 클래스의 텍스트 만 유지됩니다. 어떤 도움이 필요합니까? – DextrousDave

+0

jquery의 .next() 메서드를 사용하여 수행 할 수있는 – Carlos

+0

ok ... 감사합니다. 내가 관리하고 다시 게시 할 수 있는지 알 수 있습니다. – DextrousDave