Возможно вы меня не правильно поняли.
Когда я открываю сайт - слайдер работает, меняет картинки. Правда, при ручном переходе между слайдерами и вправду стоит убивать таймер, спасибо за идею! Но стоит уйти на другую вкладку на пару минут и вернуться - как я думаю, события накапливаются, и слайдер начинает бешено листаться. Надо заметить, что это наблюдается в фф 701, хром 18.
В опере вроде все работает как надо.
Расскажу о принципе работы, верстку не трогаю, только скрипт:
Вот так происходит смена слайдов, все в принципе просто, конечно используем jq:
$('#left').click(
function()
{
curr = $('.slider_container').find('.slider_item:visible');
curr.fadeOut();
if(curr.next().length)curr.next().fadeIn();
else $('.slider_container').find('.slider_item:first').fadeIn();
}
);
Далее, первый вызов ф-ции происходит по событию document.ready т.е. при загрузке страницы.
А сама ф-ия autoAdvance() либо делает вид, что кликает по стрелочке
$('#left').trigger('click',[true]);
либо исполняет тот же код:
curr = $('.slider_container').find('.slider_item:visible');
curr.fadeOut();
if(curr.next().length)curr.next().fadeIn();
else $('.slider_container').find('.slider_item:first').fadeIn();
потом происходит вызов самой себя, через задержку в 7 секунд:
timeOut = setTimeout(autoAdvance,7000);
В обоих случаях происходит описанный мною глюк ) Вызовы накапливаются, и все летает, когда включишь нужную вкладку.
Я тоже хотел сделать проверку временного интервала, но чего то не нашел аналога php time() в js. Может вы подскажете, как это сделать.