У меня есть слайдер изображений, который я построил для своего веб-сайта, и он настроен на ползунок каждые 3 секунды (будет медленнее после диагностики, но я не люблю ждать 10 секунд, чтобы увидеть, что не так). Я также установил его так, чтобы перед автоматическим скольжением он проверял, установлена ли переменная toSlide
в 1 (по умолчанию) или нет. Когда пользователь нажимает на следующую / предыдущую ссылку или на определенный слайд, он устанавливает toSlide
в 0.
Моя проблема в том, что он снова автоматически скользит, затем устанавливает toSlide
обратно на 1, и я не могу понять, почему. Кто-нибудь может мне помочь, пожалуйста?
Вы можете увидеть HTML на моем сайте , а вот Javascript:
//Featured Work Image Slider
// sC = sliderCount
// sA = slideAmount
// pH = pictureHeight
// sT = slideTime
var sC = 1;
var pH = 364;
var sT = 364
var toSlide = 1;
function slide(ms) {
$('#featured-box li').stop().animate({'top':sA},ms);
$('.sN').css({color:'#598dbe'});
$('#sN'+sC).css({color:'#464646'});
$('#fD > div').fadeOut(ms,function(){
$(this).css({display:'none'});
});
$('#fD-'+sC).fadeIn(ms,function(){
$('#fD-'+sC).css({display:'block'});
});
console.log(toSlide);
}
function autoSlide(ms) {
if(sC < 4) {
sC++;
sA = -(sC - 1) * pH;
} else {
sC = 1;
sA = 0;
}
slide(ms);
if(toSlide = 1) {
setTimeout ( "autoSlide(sT)", 3000 );
}
}
$(document).ready(function() {
setTimeout ( "autoSlide(sT)", 3000 );
$('#sL').click(function(){
toSlide = 0;
if(sC > 1) {
sC--;
sA = -(sC - 1) * pH;
} else {
sC = 4;
sA = -3 * pH;
}
slide(sT);
return false;
});
$('#sN').click(function(){
toSlide = 0;
if(sC < 4) {
sC++;
sA = -(sC - 1) * pH;
} else {
sC = 1;
sA = 0;
}
slide(sT);
return false;
});
$('.sN').click(function(){
toSlide = 0;
var sNid = this.id.split('sN');
sC = sNid[1];
sA = -(sC - 1) * pH;
slide(sT);
return false;
});
});