按restarting
我的意思是重置它以便重新启动时间,这样重启时需要3秒。
我的代码是:
/* ********** Forside Slider ********** */
var slider_current_id = 1;
$(".slidermenu").live("click", function() {
var id = $(this).attr('data-id');
clearInterval(window.slider_timer);
window.slider_timer = setInterval(start_slider_timer(), 3000);
window.slider_current_id = parseInt(id, 10);
$('.slidermenu.currentone').animate({backgroundColor: '#FCFBFB'}, 'slow');
$('.slidermenu.currentone').removeClass("currentone");
$(this).animate({backgroundColor: '#f3f3f3'}, 'slow');
$(this).addClass("currentone");
$('#activeimage img.currentone').fadeOut('slow');
$('#activeimage img.currentone').removeClass("currentone");
$('#activeimage img[data-id='+id+']').fadeIn('slow');
$('#activeimage img[data-id='+id+']').addClass("currentone");
});
function start_slider_timer() {
if (window.slider_current_id == 5) {
window.slider_current_id = 1;
}else{
window.slider_current_id = window.slider_current_id + 1;
}
$('.slidermenu.currentone').animate({backgroundColor: '#FCFBFB'}, 'slow');
$('.slidermenu.currentone').removeClass("currentone");
$('.slidermenu[data-id='+window.slider_current_id+']').animate({backgroundColor: '#f3f3f3'}, 'slow');
$('.slidermenu[data-id='+window.slider_current_id+']').addClass("currentone");
$('#activeimage img.currentone').fadeOut('slow');
$('#activeimage img.currentone').removeClass("currentone");
$('#activeimage img[data-id='+window.slider_current_id+']').fadeIn('slow');
$('#activeimage img[data-id='+window.slider_current_id+']').addClass("currentone");
}
var slider_timer = setInterval(start_slider_timer(), 3000);
我没有收到任何错误,它只是没有运行..我的Interval
根本没有运行。
希望有人能帮我解决这个问题。
答案 0 :(得分:2)
删除括号以将函数作为参数提供,而不是调用它。取代
var slider_timer = setInterval(start_slider_timer(), 3000);
与
var slider_timer = setInterval(start_slider_timer, 3000);
请注意,如果要“重新启动”计时器,首先必须使用
清除它clearInterval(slider_timer);
答案 1 :(得分:1)
你必须改为这个
var slider_timer = setInterval('start_slider_timer()', 1000);
_