2012-01-12 2 views
1

Итак, у меня есть три раздела с вкладками, которые показывают и скрывают onClick, но теперь я хочу, чтобы они также действовали как слайд-шоу, если пользователь не щелкнет нигде.jQuery Показать и скрыть таймер

Вот что у меня есть:

$(document).ready(function() { 
    function rClass() { 
     $('.slide_1_link').removeClass('on'); 
     $('.slide_2_link').removeClass('on'); 
     $('.slide_3_link').removeClass('on'); 
    } 
    function rFadeOut() { 
     $('.slide_1').fadeOut(); 
     $('.slide_2').fadeOut(); 
     $('.slide_3').fadeOut(); 

     $('.slide_content_1').fadeOut(); 
     $('.slide_content_2').fadeOut(); 
     $('.slide_content_3').fadeOut(); 
    } 
    $('.slide_1_link').click(function(){ 
     rClass(); 
     rFadeOut(); 
     $('.slide_1_link').addClass('on'); 
     $('.slide_1').fadeIn(); 
     $('.slide_content_1').fadeIn(); 
    }); 
    $('.slide_2_link').click(function(){ 
     rClass(); 
     rFadeOut();  
     $('.slide_2_link').addClass('on'); 
     $('.slide_2').fadeIn(); 
     $('.slide_content_2').fadeIn(); 
    }); 
    $('.slide_3_link').click(function(){ 
     rClass(); 
     rFadeOut(); 
     $('.slide_3_link').addClass('on'); 
     $('.slide_3').fadeIn(); 
     $('.slide_content_3').fadeIn(); 
    }); 

}); 

Кто-нибудь знает хороший плагин таймер или простой способ реализовать эту функциональность?

Спасибо за ваше время!

ответ

2

Вы могли бы написать функцию запускает событие щелчка по три ссылкам, в свою очередь, а затем установить, что для запуска каждые 5 секунд, используя setInterval так:

var cycleIndex = 0; 

function cycle() { 
    var index = cycleIndex % 3; 
    $('.slide_' + (index + 1) + '_link').click(); 
    cycleIndex += 1; 
} 

setInterval(cycle, 5000); 
+0

Sweet .. это сработало! Спасибо за вашу помощь.. – Amine

1

, чтобы показать/скрыть или FadeIn/Затухание в DIV с помощью JQuery есть функция задержки, через которую вы можете добавить таймер для этой анимации

$("button").click(function() { 
    $("div.first").slideUp(300).delay(800).fadeIn(400); 
    $("div.second").slideUp(300).fadeIn(400); 
}); 

проверить следующую ссылку http://api.jquery.com/delay/

+0

Спасибо за ваш ответ! Нет, чтобы показать и скрыть .. Как и таймер, поэтому через 5 секунд он скроет первую вкладку и покажет вторую и т. Д. Третья вкладка и еще через 5 сек. – Amine

+0

проверьте эту функцию javascript var t = setTimeout («javascript statement», миллисекунды); –

+0

проверить эту функцию javascript setInterval (выражение, интервал); –

Смежные вопросы