JavaScript onclick点击事件:点击切换图片并可以自动播放

在页面中放图片并设置四个button,可以通过点击上一张下一张来切换图片(翻到最后一张自动切换到第一张).用户点击自动播放,每隔两秒自动切换(类似轮播图),点击停止播放,就终止播放,运用了定时器。先看效果图.

 下面是完整的代码,需要的自取哈!

<body>
    <img id=img src=./img/0.webp alt=><br>
    //给四个button加上点击事件
    <button type=button onclick=changeImg1()>上一张</button>
    <button type=button onclick=changeImg()>下一张</button>
    <button type=button onclick=autoplay1()>自动播放</button>
    <button type=button onclick=stop1()>停止播放</button>
    <script>
        //获取这个img
        var img = document.getElementById(img);
        //设置一个变量,负责切换图片,作为索引值
        var index = 0;
        //设置一个变量来存储定时器的返回值
        var t = null;
        //定义一个数组来存储照片的地址
        var imgPath = [./img/0.webp, ./img/1.webp, ./img/2.webp, ./img/3.webp, ./img/4.webp, ./img/5.webp, ./img/6.webp, ./img/7.webp, ./img/8.webp]
        //下一张
        function changeImg() {
            //我们用三目运算符
            index = index>=(imgPath.length-1)?0:++index;
            img.src = imgPath[index];
            // 或者是if判断
            // if (index>=imgPath.length-1){
            //     index=0;
            //     img.src = `${imgPath[index]}`;
            // } else {
            //      index++;
            //     img.src = `${imgPath[index]}`
            // }
        }
        //上一张
        function changeImg1() {
            //同上
            index= index<=0?(imgPath.length-1) : --index;
            img.src =imgPath[index]
            //下面这个if判断也可以
            // if (index > 0 && index <= 8) {
            //     index--;
            //     img.src = `${imgPath[index]}`;
            // } else if (index <= 0) {
            //     index = 8;
            //     img.src = `${imgPath[index]}`
 
            // }
        }
        //自动播放
       function autoplay1() {
               t= setInterval(() => {
                   //直接将下一张的方法放在里面
                    changeImg()
                }, 2000)}//2秒调用一次
        function stop1(){
            //清除定时器
            clearInterval(t);
        }
    </script>
</body>

 效果图就是上面的啦!

这个记录下来为了以后的使用的方便,也希望大佬们多多交流,多多留言,指出我的不足的之处啦!

有需要的小伙伴自取啦!!

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小