Javascript定时器案例

Javascript定时器案例DOCTYPE tml html head metacharset utf 8 title title scripttype text javascript window onload function 使图片可以自动切换 获取 img 标签 varimg1 document get scripttype text metacharset utf 8 head html

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script type="text/javascript"> window.onload = function(){ 
    /* 使图片可以自动切换 */ //获取img标签 var img1 = document.getElementById("img1"); //创建一个数组来保存图片的路径 var imgArr = ["images/1.jpg","images/2.jpg","images/3.jpg","images/4.jpg","images/5.jpg"]; //创建一个变量,用来保存当前图片的索引 var index = 0; //定义一个变量,用来保存定时器的标识 var timer; //为btn01绑定-个单击响应函数 var btn01 = document.getElementById("btn01"); btn01.onclick = function(){ 
    /* 目前,我们每点击一次按钮,就会开启一个定时器, 点击多次就会开启多个定时器,这就导致图片的切换速度过快, 并且我们只能关闭最后一次开启的定时器 */ //在开启定时器之前,需要将当前元素上的其他定时器关闭 clearInterval(timer); /* 开启一个定时器,来自动切换图片 */ timer = setInterval(function(){ 
    //使索引自增 index++; //判断索引是否超过最大索引 //第一种写法 /* if(index >= imgArr.length){ 
    //则将index设置为0 index = 0; } */ //第二种写法 index %= imgArr.length; //修改img1的src属性 img1.src = imgArr[index]; },1000); }; //为btn02绑定-个单击响应函数 var btn02 = document.getElementById("btn02"); btn02.onclick = function(){ 
    //点击按钮以后,停止图片的自动切换,关闭定时器 /* * clearInterval()可以接收任意参数, * 如果参数是一个有效的定时器的标识,则停止对应的定时器 * 如果参数不是一个有效的标识,则什么也不做 */ clearInterval(timer); }; }; </script> </head> <body> <img id="img1" src="images/1.jpg" /> <br/> <br/> <button id="btn01">开始</button> <br/> <br/> <button id="btn02">结束</button> </body> </html> 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222740.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午3:05
下一篇 2026年3月17日 下午3:05


相关推荐

  • 从零造 “手脚”:OpenClaw 自定义 Skills 开发实战 —— 让 AI 按你的想法干活

    从零造 “手脚”:OpenClaw 自定义 Skills 开发实战 —— 让 AI 按你的想法干活

    2026年3月13日
    2
  • MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用

    MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用在 MySQL 中可以使用 IF IFNULL NULLIF ISNULL 函数进行流程的控制 1 IF 函数的使用 IF expr1 expr2 expr3 如果 expr1 的值为 true 则返回 expr2 的值 如果 expr1 的值为 false 则返回 expr3 的值 SELECTIF TRUE A B 输出结果 ASELECTIF FALSE

    2026年3月26日
    2
  • ettercap 图形界面遇无线网卡报错[通俗易懂]

    ettercap 图形界面遇无线网卡报错[通俗易懂]ettercap0.8.2copyright2001-2015EttercapDevelopmentTeamERROR:9,错误的文件描述符[/build/ettercap-W54WVV/ettercap-0.8.2/src/ec_network.c:source_init:245]libnet_init:unknownphysicallayertype0…

    2022年6月28日
    30
  • 一致性哈希算法的问题

    一致性哈希算法的问题本文将从如下三个方面探探一致性哈希算法一致性哈希算法经典实用场景 一致性哈希算法通常不适合用于服务类负载均衡 面试应对之策1、一致性哈希算法经典使用场景在数据库存储领域如果单表数据量很大,通常会采用分库分表,同样在缓存领域同样需要分库,下面以一个非常常见的Redis分库架构为例进行阐述。将上述3个Redis节点称之为分片,每一个节点存储部分数据,期间需要使用负载均衡算法,将数据尽量分摊到各个节点,充分发挥分布式的优势,提升系统缓存访问的性能。在分布缓存领域,对数据存在新增与..

    2022年7月27日
    10
  • Ubuntu 安装 pip

    Ubuntu 安装 pipUbuntu 安装 pip 安装命令 sudoapt getinstallpi 检查安装版本命令 pip V 注意此处 V 为大写

    2026年3月19日
    1
  • 如何快速学从零开始学习3d建模?

    如何快速学从零开始学习3d建模?其实对于初学者来说,3D建模是一个专业性偏强且极其难入手的游戏制作专业技术。如果是无基础从零开始的学习的话,没有一个好的学习方法和好的指导老师的话,还是比较困难的。那么如何从零基础开始学习3D建模?一、首先得知道什么是游戏3D建模在大型的游戏研发公司,3D建模是一个非常大的职能,分为4个岗位:3D角色低模手绘,3D场景低模手绘,次世代角色高模,次世代场景高模。通常我们所说的3D建模是指低模手绘。如果你需要好的学习环境,好的学习资源,这里欢迎每一位热爱游戏动漫模型的小伙伴,想要学习.

    2022年5月4日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号