2016-09-08 64 views
2

我想在滑動滑塊加載後以及其中一個滑塊具有類.class-slide之後,在body標籤上添加類。在滑動滑塊加載後運行腳本

HTML

<div class="slider"> 
    <div class="slide"> 
    1 
    </div> 
    <div class="slide"> 
    2 
    </div> 
    <div class="slide class-slide"> 
    3 
    </div> 
</div> 

於是經過圓滑已加載,如果與類的.class滑動滑塊是活動的,然後我需要在標籤的示範課。

我想這

jQuery(function() { 
if(jQuery(".class-slide").hasClass("slick-active")){ 
    jQuery(body).addClass('body-class'); 
} 

但是因爲DOM已經加載這不會工作。我們如何解決這個問題?

Link to Codepen

+0

您要添加當前活動的幻燈片「身體」級使用。對? –

+0

否標籤本身 –

+0

所以當類「class-slide」的幻燈片是活動類將添加,當其他幻燈片是活動類將被刪除? –

回答

2

請檢查下面的代碼。在更改事件後,每張幻燈片都會觸發。而且我們可以檢查它是否帶有class class-slide的div是否有效。如果具有class class-slide的div處於活動狀態,則會將body body類添加到body中,否則它將被刪除。

jQuery('.slider').on('afterChange', function(event, slick, currentSlide){ 
    if(jQuery(".class-slide").hasClass("slick-active")){ 
     jQuery(body).addClass('body-class'); 
    }else{ 
     jQuery(body).removeClass('body-class'); 
    } 
}); 
+0

非常感謝。 –

0

油滑滑塊活動init,可以這樣

$('.your-element').on('init', function(event, slick){ 
    // event subscriber goes here 
});