Javascript 一段时间后,幻灯片放映停止了吗?

Javascript 一段时间后,幻灯片放映停止了吗?,javascript,jquery,slideshow,Javascript,Jquery,Slideshow,为什么不按照下面的代码工作并在5分钟后停止 var x = 0; var s = 0; function cicle() { if (x < 2) { $("#slide").animate({ "right": "-=893px" }, 1500); x++; s++; } else { x = 0; s++; $("#slide").

为什么不按照下面的代码工作并在5分钟后停止

var x = 0;
var s = 0;

function cicle() {
    if (x < 2) {
        $("#slide").animate({
            "right": "-=893px"
        }, 1500);
        x++;
        s++;
    } else {
        x = 0;
        s++;
        $("#slide").animate({
            "right": "0px"
        }, 1000);
    }
};
var a = setInterval("cicle()", 5000);
if (s == 10) {
    clearInterval(a);
    var a = setInterval("cicle()", 5000);
}
var x=0;
var s=0;
函数cicle(){
if(x<2){
$(“#幻灯片”)。设置动画({
“右”:“-=893px”
}, 1500);
x++;
s++;
}否则{
x=0;
s++;
$(“#幻灯片”)。设置动画({
“右”:“0px”
}, 1000);
}
};
var a=设置间隔(“cicle()”,5000);
如果(s==10){
间隔时间(a);
var a=设置间隔(“cicle()”,5000);
}

setInterval
的第一个参数更改为
cicle

var a = setInterval(cicle, 5000);
if (s == 10) {
    clearInterval(a);
    var a = setInterval(cicle, 5000);
}
我希望它能解决你的问题

在添加新动画之前,最好先停止动画:

function cicle() {
    if (x < 2) {
        $("#slide").stop().animate({
            "right": "-=893px"
        }, 1500);
        x++;
        s++;
    } else {
        x = 0;
        s++;
        $("#slide").stop().animate({
            "right": "0px"
        }, 1000);
    }
}
函数cicle(){
if(x<2){
$(“#幻灯片”).stop().animate({
“右”:“-=893px”
}, 1500);
x++;
s++;
}否则{
x=0;
s++;
$(“#幻灯片”).stop().animate({
“右”:“0px”
}, 1000);
}
}