JavaScript onclick クリック イベント: クリックして画像を切り替え、自動的に再生できます

ページに写真を配置し、4 つのボタンを設定すると、前の写真と次の写真をクリックして写真を切り替えることができます (最後の写真に目を向けると、自動的に最初の写真に切り替わります)。 2 秒 (カルーセル画像と同様)、クリックして再生を停止すると、再生が終了し、タイマーが使用されます。最初にレンダリングを見てください。

 以下は完全なコードです。必要な場合は、自分で入手できます。

<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>

 エフェクト画像は以上です!

これは将来の使用の便宜のために記録されたものであり、大物がより多くのコミュニケーションを取り、多くのメッセージを残し、私の欠点を指摘できることを願っています!

困っている友達が拾ってくれます!!

おすすめ

転載: blog.csdn.net/A20201130/article/details/122118855