单击音乐图标,实现音乐的暂停与播放。

今天训练H5大赛的时候学习到了一个新的内容, 就是以上的题目。
一共三部曲。
废话不多说,上代码。
1、创建一个.html页面,并且引入音乐和图标,用来实现网页的显示。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>单击音乐图标实现暂停与播放。</title>
		
		<!-- 音乐css样式 -->
		<link rel="stylesheet" type="text/css" href="css/css.css"/>
		
	</head>
	<body style="background-color: cornflowerblue;">
		
		<!-- 导入音乐,并且给音乐设置id,后面要用到。 -->
		<audio id="music" autoplay="autoplay" loop="loop" src="media/BGM.mp3" ></audio>
		
		<!-- 导入音乐图标,并且给音乐图标设置id,后面还是要用到。 -->
		<img id="musicico" onclick="musiccc()" src="img/音乐ico.png" width="200px" >
		
	</body>
	<!-- 引入script逻辑代码。 -->
	<script type="text/javascript" src="js/js.js"></script>
</html>

2、创建一个.js页面,用来实现逻辑代码。

// 动画旋转
var music = document.getElementById('music')    //获取音乐
var musicico = document.getElementById('musicico')   //获取音乐图标
var tem = true  //设置一个变量,用来控制音乐是否在播放。

//定义一个函数,当用户单击的时候触发这个函数,从而实现音乐的暂停与播放。
function musiccc(){
	//tem用来控制音乐当前是否在播放。true代表音乐正在播放,false代表音乐当前正在处于暂停的状态。
	if(tem == false){
		music.play()  //播放音乐
		tem = true  
		document.getElementById('musicico').style.animationPlayState = 'running'  //播放音乐图标
	}else{
		music.pause()  //暂停音乐
		tem = false
		document.getElementById('musicico').style.animationPlayState = 'paused'  //暂停音乐图标
	}
}

3、创建一个.css页面,用来实现动画旋转的功能。

/* 音乐播放和暂停 */
img#musicico{
	animation-name: music; //这个名称是下方的动画名称
	animation-timing-function: linear;  //linear代表均速旋转
	animation-duration: 3s;  //3秒旋转完一圈
	animation-iteration-count: infinite; //旋转无数次
}

/* 实现动画的旋转 */
@keyframes music{
	0%{
		transform: rotate(0deg);
	}
	50%{
		transform: rotate(180deg);
	}
	100%{
		transform: rotate(365deg);
	}
}

到这里就完成了,让我们看一下效果吧。
由于.gif动画播放没有声音,所以效果图上的体验不是很好。
但是我们想要的效果是实现了。
在这里插入图片描述
刚看没用,快快打开你的开发软件练习起来吧。

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

做个乖小孩i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值