2017-02-21 17 views
0

В настоящее время у меня есть небольшая функция, которая добавляет/удаляет класс в 2-х местах при нажатии на навигационную марку (она добавляет/удаляет .active из самой маркера и из соответствующего div с некоторая информация).Добавить/удалить класс после X количество секунд

Можно ли объединить это с автоматическим добавлением/удалением класса .active (в обоих местах) каждые, скажем, 10 секунд?

$(document).ready(function() { 
    $('.case-1').addClass('active'); 
    $('#case-1').addClass('active'); 

$("#carousel-nav ul li").click(function() { 
    $('#carousel-nav ul li.active').not(this).removeClass('active'); 
    $(this).addClass('active'); 

var divClass = $(this).attr('id') 
    $('div').removeClass('active'); 
    $('.' + divClass).addClass('active'); 
    }); 

}); 

ответ

0

Edit: первый раз понял вопрос так вот еще один выстрел:

Обновленоjsfiddle

setInterval(function(){ 
 
    // toggle the class every 
 
    $('div').toggleClass('blue'); 
 
    setTimeout(function(){ 
 
    // toggle another class 
 
    $('div').toggleClass('red'); 
 
    },2000) 
 

 
},2000);
.blue{ 
 
    color: blue; 
 
} 
 
.red{ 
 
    color: red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class=""> 
 
testing 123 
 
</div>


Заверните в:

setTimeout(function(){ 
    //actions to perform 
}, 3000); 

Заменить со временем вы хотите

См jsfiddle

+0

Здравствуй! Спасибо за ваш ответ, но это не совсем то, что я ищу. Я ищу (например) case-1 имеет .active по умолчанию. Через 3 секунды .active удаляется из case-1 и добавляется в case-2. Затем через еще 3 секунды .active удаляется из case-2 и добавляется в case-3. Он также должен зацикливаться, перезагрузиться после последнего cas. – imrafaelhi

+0

@imrafaelhi Извините неправильно понял ваш вопрос, я буду работать над ним и изменить –

+0

@imrafaelhi Я обновил сообщение –

0

вы можете попробовать вызвать функцию переключения классы рекурсивно

$(document).ready(function() { 
    var num = 0; 
    var cases = [to the max number of cases] 
    var activateToggling = function(cases) { 
     num=num+1; 
     $('.case-'+(num-1)).toggleClass('active'); 
     $('#case-'+(num-1)).toggleClass('active'); 
     $('.case-'+num).toggleClass('active'); 
     $('#case-'+num).toggleClass('active'); 
     if(num==cases){ 
      num=1; 
     } 
     setTimeout(activateToggling(cases), 3000); 
    } 
})