Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 手动推进幻灯片放映_Javascript - Fatal编程技术网

Javascript 手动推进幻灯片放映

Javascript 手动推进幻灯片放映,javascript,Javascript,我是一名编程新手,我正在努力在我正在开发的网站上播放幻灯片。我已经创建了一个幻灯片,每5秒播放一次,但是我想允许用户手动播放(或反转) 我已经创建了一个向前移动按钮,我正在使用onclick函数。我已经能够使onclick工作,以将显示提前一张图片,但是一旦新图像出现,onclick就无法工作,直到5秒后自动出现下图。然后onclick似乎又起作用了。这是一个连续的循环 i、 e: -第二个图像出现 -单击右前进按钮,第三个图像立即出现 -点击第三张图片,什么也没发生(5秒后自动进入第四张图片)

我是一名编程新手,我正在努力在我正在开发的网站上播放幻灯片。我已经创建了一个幻灯片,每5秒播放一次,但是我想允许用户手动播放(或反转)

我已经创建了一个向前移动按钮,我正在使用onclick函数。我已经能够使onclick工作,以将显示提前一张图片,但是一旦新图像出现,onclick就无法工作,直到5秒后自动出现下图。然后onclick似乎又起作用了。这是一个连续的循环

i、 e: -第二个图像出现 -单击右前进按钮,第三个图像立即出现 -点击第三张图片,什么也没发生(5秒后自动进入第四张图片) -第四张图片出现了,我可以点击右前进按钮,第五张图片马上出现了,但同样的问题是点击新图片什么也没做

这是我的密码:

var myImage = document.getElementById("mainImage");
var navLeft = document.getElementById("navLeft");
var navRight = document.getElementById("navRight");

var imageArray = ["images/ss_img001.jpg","images/ss_img002.jpg","images/ss_img003.jpg","images/ss_img004.jpg",
                  "images/ss_img005.jpg","images/ss_img006.jpg","images/ss_img007.jpg","images/ss_img008.jpg"];
var imageIndex = 0;


navRight.onclick = function () {
    myImage.setAttribute("src",imageArray[imageIndex]);
    image++;
    if (imageIndex >= imageArray.length) {
        imageIndex = 0;
    }
}

function changeImage() {
    myImage.setAttribute("src",imageArray[imageIndex]);
    imageIndex++;
    if (imageIndex >= imageArray.length) {
        imageIndex = 0;
    }
}

setInterval(changeImage,5000);
线路

image++;
应该是

imageIndex++;
为了避免类似的进一步问题,您可以使用以下方法代替单击定义:

navRight.onclick = changeImage;
线路

image++;
应该是

imageIndex++;
为了避免类似的进一步问题,您可以使用以下方法代替单击定义:

navRight.onclick = changeImage;

谢谢你,德兰,我真的很感谢你的帮助。谢谢你,德兰,我真的很感谢你的帮助。我现在可以用了。