2013-02-14 3 views
0

현재 동일한 클래스를 공유하는 여러 슬라이더가있는 페이지의 플렉스 슬라이더에서 현재 슬라이드를 제거하려고합니다. http://flexslider.woothemes.com/여러 플렉스 슬 라이더가 현재 슬라이드를 제거합니다.

현재 제 2 플렉스 슬라이더의 현재 슬라이드를 닫기 링크를 클릭하면 제 1 플렉스 슬라이더에서 현재 슬라이드가 제거됩니다.

각 슬라이더에서 현재 슬라이드를 올바르게 제거해야합니다. 어떤 아이디어?

HTML

(window).load(function() { 

    $('.choices').flexslider({ 
     animation: "slide", 
    }); 

    var slider = $('.choices').data('flexslider'); 

    $('.slides .close').click(function(){ 
     slider.removeSlide(slider.currentSlide); 
    }); 
}); 

답변

0

이 해결 방법을 발견하는 관리

<!-- flexslider 1 --> 
<section class='choices'> 
    <ul class='slides'> 
    <li class='flex-active-slide'> 
     <a class='close'></a> 
     content here 
    </li> 
    <li> 
     <a class='close'></a> 
     content here 
    </li>   
    <li> 
     <a class='close'></a> 
     content here 
    </li> 
    </ul> 
</section> 

<!-- flexslider 2 --> 
<section class='choices'> 
    <ul class='slides'> 
    <li class='flex-active-slide'> 
     <a class='close'></a> 
     content here 
    </li> 
    <li> 
     <a class='close'></a> 
     content here 
    </li> 
    </ul> 
</section> 

스크립트의 currentSlide은 슬라이드 인덱스 번호를 반환합니다. 따라서 더 구체적인 선택기가 필요합니다.

$('.choices .close').click(function(){ 
    var sliderid = $(this).closest(".choices"); 
    var slider = sliderid.data('flexslider'); 
    slider.removeSlide(slider.currentSlide); 
}); 
+0

내 슬라이드 3에서 특정 슬라이드를 제거하려면 어떻게해야합니까? $ ('# flexslider')를 사용할 수 있음을 알고 있습니다 .flexslider (3); 브라우저 너비가 1024px를 넘으면 슬라이드를 제거하고 싶지만 나에게 효과가없는 것 같습니다. – Daimz

+0

$ ('# flexslider')를 할 수 있다고 생각합니다. removeSlide (2)는 0부터 시작하는 슬라이드 인덱스를 사용하므로 세 번째 슬라이드를 제거합니다. –