2013-01-16 59 views
1

我正在使用jquery插件Flexslider。我使用旋轉木馬作爲滑塊的導航。我試圖在頁面加載時向第一個輪播元素添加一個css類「active」,然後當用戶選擇另一個元素並將「active」類添加到下一個元素時,從第一個元素中刪除「active」類用戶選擇。Jquery Flexslider添加和刪除幻燈片上的類

傳送帶作爲導航工作正常,但是當我使用傳送帶中的「啓動功能」添加如下建議的活動類時,滑塊停止移動並停留在一張幻燈片上。這是奇怪的,它將工作3-4點擊,然後將不會繼續...

想法?

的Javascript

<script type="text/javascript" charset="utf-8"> 
    $(window).load(function() { 
     // The slider being synced must be initialized first 
     $('#clientthumbs').flexslider({ 
      animation: "slide", 
      controlNav: false, 
      animationLoop: true, 
      directionNav: true, 
      slideshow: false, 
      itemWidth: 210, 
      itemMargin: 20, 
      asNavFor: '#clienttestimonials', 
      start : function(slider) { 
       $('#clientthumbs li').click(function(event) { 
       event.preventDefault();      
       $('#clientthumbs li').removeClass('active');      
       $(this).addClass('active'); 
       $('.flexslider').show(); 
       var slideTo = $(this).attr("rel"); //Grab rel value from link; 
       var slideToInt = parseInt(slideTo); 
       if (slider.currentSlide != slideToInt) { 
        $(this).addClass('active'); 
        slider.flexAnimate(slideToInt) //Move the slider to the correct slide (Unless the slider is also already showing the slide we want); 
       } 


       }); 
       } 
     }); 

     $('#clienttestimonials').flexslider({ 
      animation: "slide", 
      controlNav: false, 
      directionNav: false, 
      animationLoop: false, 
      slideshow: false, 
      sync: "#clientthumbs" 
     }); 
    }); 
</script> 

HTML

<div id="clientthumbs" class="flexslider"> 
    <ul class="slides"> 
    <li class="client1"></li> 
    <li class="client2"></li> 
    </ul> 
</div> 

<div id="clienttestimonials" class="flexslider"> 
    <ul class="slides"> 
    <li> 
     <div class="clientpicsandquotes"> 
     </div>  
    </li> 
    <li> 
     <div class="clientpicsandquotes"> 
     </div> 
    </li> 
    </ul> 
</div> 
+0

您是否在滑塊中一次顯示一個圖像?在這種情況下,不需要添加活動類,因爲FlexSlider本身已經提供了一個活動類。是這種情況還是它不同? – mabus44

+0

不,我試圖改變一次顯示多個圖像的旋轉木馬圖像之一的類。傳送帶充當滑塊導航 – DaveG

回答

2

嘗試添加rel標籤的#clientthumbs裏項目和#clienttestimonials立項目,並確保它們匹配。然後將您的啓動功能替換爲:

start : function(slider) { 
    $('#clientthumbs li').click(function(event) { 
    event.preventDefault();      
    $('#clientthumbs li').removeClass('active');      
    $(this).addClass('active'); 
    $('.flexslider').show(); 
    var slideTo = $(this).attr("rel"); //Grab rel value from link; 
    var slideToInt = parseInt(slideTo); 
    if (slider.currentSlide != slideToInt) { 
     $(this).addClass('active'); 
     slider.flexAnimate(slideToInt) //Move the slider to the correct slide (Unless the slider is also already showing the slide we want); 
    } 


} 
    }); 
+0

我無法將其作爲flexslider功能使用。加載時它會打破滑塊。這裏是插件的網站http://www.woothemes.com/flexslider/ – DaveG

+0

對不起,我錯過了click功能的右括號。這可能有幫助。 – Anthony

+0

仍然不行,仍然打破了應用程序。 – DaveG