gpt4 book ai didi

Javascript 执行 if 和 else

转载 作者:行者123 更新时间:2023-11-30 10:13:22 24 4
gpt4 key购买 nike

这是我的代码:

var srcArray = ["_images/overlook.jpg","_images/winery_sign.jpg","_images/lunch.jpg","_images/bigSur.jpg","_images/flag_photo.jpg","_images/mission_look.jpg"];
var myImg = document.getElementById("mainImage");
var imgIndex = 0;
var status = false;

myImg.onclick = function () {
if (status) {
var collage = setInterval(changeSrc,1500);
status = true;
} else {
clearInterval(collage);
status = false;
}
}

function changeSrc (){
myImg.setAttribute("src",srcArray[imgIndex]);
imgIndex++;
if (imgIndex == srcArray.length) {
imgIndex = 0;
}
}

我想做的是在未设置间隔时在 changeSrc 上设置间隔,在设置间隔时清除间隔。我在 Firebug 中看到浏览器执行 if 的第一部分,然后执行 else 的第二行(status = false)。

当我单击图像时设置间隔后,它会在同一图像上启动另一个间隔。基本上每次点击它都会运行得更快,而且不会停止。

问题出在哪里?

在此先感谢您的帮助:)

最佳答案

这样做:

myImg.onclick = function () {
if (status) {
var collage = setInterval(changeSrc,1500);
} else {
clearInterval(collage);
}
status = !status;
}

在您的代码中,您错误地初始化了状态

关于Javascript 执行 if 和 else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25252111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com