Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2013, 11:18
Новичок на форуме
Отправить личное сообщение для Shalty Посмотреть профиль Найти все сообщения от Shalty
 
Регистрация: 21.01.2013
Сообщений: 1

Помогите пожалуйста разобраться со скриптом
Здравствуйте, у меня возникла небольшая проблема со слайдером, к сожалению я плохо разбираюсь в javascript/jQuery, приходится изучать так сказать "на ходу".
Суть проблемы: в шапке сайта есть слайдер, который "перелистывает" изображения через определенный промежуток времени (интервал, заданный в функции), все бы нечего, но в браузерах Chrome/Safari при переходе на другие вкладки, и последующем возврате на вкладку с сайтом, слайдер начинает крутиться с таймаутом в 1 секунду. Пока не наверстает упущенные прокручивания.
Я попыталась исправить баг, заменив функцию setInterval на setTimeout, но к сожалению проблема осталась, помогите пожалуйста решить данную проблему
Код с функцией setInterval:

jQuery(document).ready(function(){
function htmSlider(){
var slideWrap = jQuery('.b-slider-image');
var slideWidth = jQuery('.b-slide-item').outerWidth();
var scrollSlider = slideWrap.position().left - slideWidth;

timer = setInterval(function(){
slideWrap.animate({left: scrollSlider}, 1000, function(){
slideWrap
.find('.b-slide-item:first')
.appendTo(slideWrap)
.parent()
.css({'left': 0});
});
}, 5000);
}
htmSlider();
});

Код с функцией setTimeout:

jQuery(document).ready(function(){
function htmSlider(){
var slideWrap = jQuery('.b-slider-image');
var slideWidth = jQuery('.b-slide-item').outerWidth();
var scrollSlider = slideWrap.position().left - slideWidth;

timer = setTimeout(function run(){
slideWrap.animate({left: scrollSlider}, 1000, function(){
slideWrap
.find('.b-slide-item:first')
.appendTo(slideWrap)
.parent()
.css({'left': 0});
});

timer = setTimeout(run, 5000);

}, 5000);
}
htmSlider();
});
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2013, 14:41
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,220

Shalty,
смотрите метод clearInterval(TimerID)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребята помогите пожалуйста разобраться stalnoy Общие вопросы Javascript 1 21.10.2012 22:38
Подсчёт дней до конца акции - помогите разобраться со скриптом Chataine Общие вопросы Javascript 0 24.07.2011 13:48
Помогите пожалуйста девушке разобраться Feni4ka jQuery 10 26.04.2011 18:25
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 09:44
Помогите разобраться со скриптом! Чайник Элементы интерфейса 1 13.03.2009 22:57