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>

 效果图就是上面的啦:

到此这篇关于JavaScript onclick点击事件-点击切换图片且自动播放的文章就介绍到这了,更多相关JavaScript onclick点击事件 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2022-01-10

IE8的JavaScript点击事件(onclick)不兼容的解决方法

博客园闪存分页是用JavaScript生成的,今天发现在IE8下点击页码不能翻页,翻页操作是在当前页码的onclick事件中进行的. 开始代码是这么写的: 复制代码 代码如下: var a = document.createElement("a");a.setAttribute("onclick", this.ClickFunctionName + "(" + pageIndex + ");Pager.SetCurrent("

JavaScript给按钮绑定点击事件(onclick)的方法

本文实例讲述了JavaScript给按钮绑定点击事件(onclick)的方法.分享给大家供大家参考.具体分析如下: 我们可以通过设定按钮的onclick属性来给按钮绑定onclick事件 <!DOCTYPE html> <html> <head> <script> function displayDate() { document.getElementById("demo").innerHTML=Date(); } </script

JavaScript给每一个li节点绑定点击事件的实现方法

 1.单击事件 <body> <h2>javascript 事件</h2> <ul> <li>aaaa</li> <li>aaaa111</li> <li>aaaa222</li> <li>aaaa3333</li> <li>aaaa444</li> </ul> <script type="text/javasc

android中在Activity中响应ListView内部按钮的点击事件的两种方法

最近交流群里面有人问到一个问题:如何在Activity中响应ListView内部按钮的点击事件,不要在Adapter中响应? 对于这个问题,我最初给他的解答是,在Adapter中定义一个回调接口,在Activity中实现该接口,从而实现对点击事件的响应. 下班后思考了一下,觉得有两种方式都能比较好的实现:使用接口回调和使用抽象类回调. 正好可以复习一下接口和抽象类的区别,于是写了两个Demo: 1.使用接口回调: Adapter类 package com.ivan.adapter; import

JavaScript判断按钮被点击的方法

废话不多说了,直接给大家贴代码了. firfox版: <HTML> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <HEAD> <TITLE></TITLE> <script> document.onclick=function(e){ var evt=e||window.event; var tar=

微信小程序之绑定点击事件实例详解

微信小程序之绑定点击事件实例详解 微信小程序出来那么久了,趁着有时间自己研究一下,前阶段看一了一下,但是不允许个人注册,现在已经对个人开放了,所以爱好者们可以自己研究了. 首先,我们看一下如何添加底部的标签栏:在app.json里操作 { "pages":[ //在这里添加页面的路径 "pages/index/index", "pages/logs/logs", "pages/home/home" ], "windo

js 索引下标之li集合绑定点击事件

下面一段代码给大家介绍li集合绑定点击事件,具体代码如下所示: //Method-1: var items = document.getElementsByTagName('li'); for(var i=0;i<items.length;i++){ items[i].index = i; items[i].onclick = function(){ this.innerHTML = this.index; } } //Method-2: var items = document.getElem

iview给radio按钮组件加点击事件的实例

如下所示: <RadioGroup v-model="formValidate.phone"> <Radio label="phone">商家电话</Radio> <Radio label="leaderPhone">负责人电话</Radio> <span @click="inputPhone()"><Radio label="newPho

layer.open 按钮的点击事件关闭方法

如下所示: layer.open({ content: dat, btn: ['确定'], yes: function(index, layero){ //事件 layer.close(indxex); } }); 以上这篇layer.open 按钮的点击事件关闭方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

Android给TextView添加点击事件的实现方法

首先设定TextView的clickable属性为true. 可以在布局文件中进行设定,比如: <TextView android:id="@+id/phone" android:clickable="true" --------->设定此属性 android:layout_marginLeft="10dp" android:layout_below="@id/address" android:layout_toR

layui禁用侧边导航栏点击事件的解决方法

直接上代码吧 //JavaScript代码区域 layui.use(['element', 'laypage'],function(){ var element = layui.element; element.on('nav(test)', function(elem){ $(".layui-nav-tree").find(".layui-nav-child").css("display","contents"); });