我已經編寫了滑塊的腳本。在我的代碼中,我定義了一個名爲autoswitch
的變量,默認值爲true
,如果autoswitch == true
的幻燈片將被更改。但我想要如果用戶點擊幻燈片的箭頭,autoswitch
更改爲false
。我的代碼如下:無法更改JQuery函數中變量的值
$(document).ready(function() {
// Initiate variables
var speed = 500;
var autoswitch = true;
var autoswitch_speed = 5000;
// Add initial active class
$('.slide').first().addClass('active');
// Hide all slides
$('.slide').hide();
$('.slide').first().show();
$('#next').click(function() {
autoswitch = false;
$('.active').removeClass('active').addClass('oldActive');
if($('.oldActive').is(':last-child')){
$('.slide').first().addClass('active');
} else{
$('.oldActive').next().addClass('active');
}
$('.oldActive').removeClass('oldActive');
$('.slide').fadeOut(speed);
$('.active').fadeIn(speed);
});
$('#prev').click(function() {
autoswitch = false;
$('.active').removeClass('active').addClass('oldActive');
if($('.oldActive').is(':first-child')){
$('.slide').last().addClass('active');
} else{
$('.oldActive').prev().addClass('active');
}
$('.oldActive').removeClass('oldActive');
$('.slide').fadeOut(speed);
$('.active').fadeIn(speed);
});
if(autoswitch){
setInterval(function() {
$('.active').removeClass('active').addClass('oldActive');
if($('.oldActive').is(':last-child')){
$('.slide').first().addClass('active');
} else{
$('.oldActive').next().addClass('active');
}
$('.oldActive').removeClass('oldActive');
$('.slide').fadeOut(speed);
$('.active').fadeIn(speed);
}, autoswitch_speed);
}
});
我有兩個滑塊箭頭,他們都在點擊,在函數的第一行改變autoswitch = false;
值,但即使點擊箭頭後,這招不起作用,並且,幻燈片自動切換!我如何解決我的問題?
uhm。如果陳述只發生一次。一旦它運行完成,間隔開始或永遠不會。 –