JS定时器及定时器案例(附完整代码)

JS定时器及定时器案例(附完整代码)

一、setTimeout定时器

1、理解: setTimeout 函数用于在指定的时间后执行一次特定的代码。

2、代码格式:

setTimeout(function() {
    // 在指定时间后执行的代码
}, 1000); // 延迟1秒后执行

3、取消定时器:

使用预定义函数:clearTimeout(timeout);来取消定时器

4、完整代码:(图片地址需自己修改)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<button onclick="fun()">取消定时器</button>
		<br />
		<img src="../img/乔巴.png" width="100px" height="100px"/>
		<script type="text/javascript">
			var img = document.getElementsByTagName("img")[0];
			//5000毫秒后触发定时器内的函数
			var timeout = setTimeout(function(){
				img.setAttribute("src","../img/歌姬.jpeg");
				img.setAttribute("width","200px");
				img.setAttribute("height","200px");
			},5000);
			function fun(){
				clearTimeout(timeout);
			}
		</script>
	</body>
</html>

代码效果:

在这里插入图片描述

二、 setInterval 定时器

1、理解: setInterval 函数用于每隔指定的时间重复执行特定的代码。

2、代码格式:

setInterval(function() {
    // 每隔指定时间执行的代码
}, 2000); // 每隔2秒执行一次

3、取消定时器

使用预定义函数:clearInterval(interval);来取消定时器。

4、每5秒在控制台打印文本

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<button onclick="fun()">取消定时器</button>
		<script type="text/javascript">
		//每过5000毫秒都触发定时器内的函数
		var interval=setInterval(function(){
			console.log("憨憨小雷");
		},5000);
		function fun(){
			clearInterval(interval);
		}
		</script>
	</body>
</html>

代码效果:

在这里插入图片描述

三、注册成功后页面自动跳转案例

1、直接上源码(setInterval)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			span{
				color: red;
			}
		</style>
	</head>
	<body>
		<h1>注册成功,<span>3</span>秒后跳转到<a href="http://www.baidu.com">百度页面</a></h1>
		<script type="text/javascript">
			var span = document.getElementsByTagName("span")[0];
			setInterval(function(){
				var v = span.innerText;
				if (v>1) {
					v--;
					span.innerText=v;
				} else{
					window.location="http://www.baidu.com";
				}
			},1000);
		</script>
	</body>
</html>

2、代码效果: 该页面加载后,将显示注册成功的信息,并在span元素中显示"3",然后每隔1秒将倒计时数字减少直至1,最后跳转到百度页面。

效果截图:

在这里插入图片描述

四、GIF动图案例

1、直接上源码(setInterval)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		
		<img src="../img/乔巴.png" width="100px" height="100px"/>
		
		<script type="text/javascript">
			
			var img = document.getElementsByTagName("img")[0];
			var imgPath = ["../img/路飞.jpg","../img/歌姬.jpeg","../img/乔巴.png"];
			var index = 0;
			
			setInterval(function(){
				img.setAttribute("src",imgPath[index]);
				index++;
				if(index == imgPath.length){
					index = 0;
				}
				
			},1000);
		</script>
	</body>
</html>

2、GIF动图就是多张图片使用setInterval定时器的功能,加快跳转毫秒数就会有GIF效果。

  • 21
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在js定时器中获取随机字母,可以使用以下方法: 1. 首先,创建一个包含所有字母的数组,例如\['a', 'b', 'c', ... 'z'\]。 2. 使用Math.random()函数生成一个0到1之间的随机数。 3. 将随机数乘以字母数组的长度,然后使用Math.floor()函数向下取整,以获取一个0到字母数组长度减1之间的随机整数。 4. 使用随机整数作为索引,从字母数组中获取对应的字母。 5. 在定时器函数中使用获取到的随机字母进行相应的操作。 以下是一个示例代码: ```javascript // 创建包含所有字母的数组 var letters = \['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'\]; // 定义定时器函数 function getRandomLetter() { // 生成随机整数作为索引 var randomIndex = Math.floor(Math.random() * letters.length); // 获取随机字母 var randomLetter = letters\[randomIndex\]; // 在控制台打印随机字母 console.log(randomLetter); } // 每隔1秒执行一次定时器函数 var timerId = setInterval(getRandomLetter, 1000); ``` 这段代码会每隔1秒在控制台打印一个随机字母。你可以根据需要进行相应的操作,比如将随机字母显示在网页上或进行其他处理。\[1\]\[3\] #### 引用[.reference_title] - *1* *3* [基于JavaScript定时器功能-实现运动逻辑结构算法并简单应用](https://blog.csdn.net/qq_53123067/article/details/125021136)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [JavaScript定时器详解,配合案例讲解](https://blog.csdn.net/zhangawei123/article/details/127498673)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值