我正在显示旋转图像。
var pics= [
"images/img1.jpg",
"images/img2.jpg",
"images/img3.jpg",
];
并希望它停止onClick
。
function StopRotate(interval, imgIndex) {
clearInterval(interval);
var permanentImage = picture[imgIndex].src;
picture[imgIndex].src = permanentImage;
pics.splice(pics.indexOf(picture[imgIndex].src), 1);
}
这是我旋转图像的方式(这个块对于三个图像容器出现了三个):
interval0 = setInterval(function () {
if(pics.length != 1) {
picture[0].src = pics[count];
count++;
if (count == pics.length) count = 0;
}
else picture[0].src = pics[0];
}, 10);
但是即使路径已经从数组中删除,图像也会再次出现在其他帧中。我使用 12 张图片进行了尝试。有时当我运行它时,src 原来是未定义的。
此外,如果我单击无序的图像,其他帧的图像将变为空白。在此示例中,我有三个图像,如果单击第三个容器,则第一个容器变为空白,当间隔函数分开时,这将如何影响其他帧。但是,按顺序单击它时没有问题。请注意,我更改了将 if 条件放入 setInterval 的顺序。