重置图像滑块的Javascript计时器

重置图像滑块的Javascript计时器,javascript,timer,slider,Javascript,Timer,Slider,我正在创建一个图像滑块,并使用JavaScript计时器前进到下一张图片。当用户单击“前进”或“后退”按钮时,幻灯片的显示时间大大缩短,请参见下图。我需要帮助使按钮向前滑动,同时重置计时器。我附加了我的JavaScript、HTML和CSS来彻底覆盖我的代码 我的JavaScript: var imageShown = 1; var total = 7; function autoplay() { var image = document.getElementById('picture

我正在创建一个图像滑块,并使用JavaScript计时器前进到下一张图片。当用户单击“前进”或“后退”按钮时,幻灯片的显示时间大大缩短,请参见下图。我需要帮助使按钮向前滑动,同时重置计时器。我附加了我的JavaScript、HTML和CSS来彻底覆盖我的代码

我的JavaScript:

var imageShown = 1;
var total = 7;

function autoplay() {
    var image = document.getElementById('picture');
    imageShown = imageShown + 1;
    if(imageShown > total){imageShown = 1;}
    if(imageShown < 1){imageShown = total;} 
    picture.src = "Images/img"+ imageShown +".jpg";
    console.log("Pic Changed");
}

window.setInterval(autoplay, 5000);

function pic(x) {
    var image = document.getElementById('picture');
    imageShown = imageShown + x;
    if(imageShown > total){imageShown = 1;}
    if(imageShown < 1){imageShown = total;} 
    picture.src = "Images/img"+ imageShown +".jpg";
    console.log("Button clicked");
    window.clearInterval(autoplay);
    window.setInterval(autoplay, 5000);
}

您应该按如下方式使用clearInterval:

clearInterval(autoplay);
或作为


我认为您可能试图错误地重置间隔


这给出了一个如何在javascript中将函数集重置为间隔的示例

您正在尝试清除函数而不是变量try this var myVar=setIntervalautoplay},5000;然后clearIntervalmyVar再次设置间隔
    margin:0px;
    }
#imageslider {
    height:700px;
    width:1000px;
    margin: 50px auto;
    position:absolute;
    border-radius:4px;
    overflow:hidden;
    padding-right: 5000px;
    padding-top: 1000px;
    }
#picture {
    height:750px;
    width:1000px;
    position:relative;
    padding-top: 50px
    }
.left_div {
    height: 750px;
    width: 150px;
    position: absolute;
    top: 250px;
    left: 0px;
}
.right_div {
    height: 750px;
    width: 150px;
    position: absolute;
    top: 250px;
    right: 0px;
}
.left_click {
    height:50px;
    width:50px;
    position:absolute;
    top:40%;
    left:20px;
    opacity:0;
    transition: all .2s ease-in-out 0s;
    }
.right_click {
    height:50px;
    width:50px;
    position:absolute;
    top:40%;
    right:20px;
    opacity:0;
    transition: all .5s ease-in-out 0s;
    }
.left_div:hover .left_click {
    opacity:0.6;
    }
.right_div:hover .right_click {
    opacity:0.6;
}
.left:hover .left1
clearInterval(autoplay);
window.clearInterval(autoplay);