一个进度条,类似DNF的血条

最近要写下个血瓶效果,于是用PS做了两张图,用DIV做出了这样的效果:


这个底色可以用CSS随便改,但这个粉红背景就得改图片了。


代码也很简单,就是JS,CSS了,代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>进度条</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
	<script type="text/javascript" src="<%=path%>/struts/jquery/jquery-1.7.1.min.js?ver=1.2.8"></script>
	<style type="text/css">
		#blood_box{width:150px;height:150px;position:relative;background:#f00;overflow:hidden;}
		#blood_a{width:150px;position:absolute;z-index:1;background-image:url('<%=path%>/resources/images/bloodbar.png');background-repeat:repeat-y;background-position:center bottom;}
		#blood_b{width:150px;height:150px;position:absolute;z-index:2;background-image:url('<%=path%>/resources/images/bloodframe.png');background-repeat:no-repeat;}
		#blood_c{width:150px;height:150px;position:absolute;z-index:3;text-align:center;margin:75px auto;}
	</style>
	<script type="text/javascript">
		var i = 1;
		var interval = setInterval(function(){
			f1(i);
			i = i+1;
		},100);
		function f1(i){
			var ratio_height = 150*(100-i)/100;//根据百分比,计算div的高度
			$("#blood_a").css("height",ratio_height+"px");//给div动态加上高度
			$("#blood_c").html(i+"%");//给div动态加上值
		}
		setTimeout(f2,10000);
		function f2(){
			clearInterval(interval);
		}
	</script>

  </head>
  
  <body>
	<label>生命回复进度</label>
	<br>
	<div id="blood_box">
		<div id="blood_a"></div>
		<div id="blood_b"></div>
		<div id="blood_c"></div>
	</div>
  </body>
</html>
最后,附上jsp里所引的两张图片:

bloodbar.png


bloodframe.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要实现多个音频共用一个进度条,可以使用 JavaScript 和 HTML5 中的 Audio 对象。您可以为每个音频文件创建一个 Audio 对象,然后使用 JavaScript 控制它们的播放,暂停和进度。以下是一个简单的示例: HTML: ``` <audio id="audio1" src="audio1.mp3"></audio> <audio id="audio2" src="audio2.mp3"></audio> <input id="progress" type="range" min="0" max="100" value="0"> ``` JavaScript: ``` var audio1 = document.getElementById("audio1"); var audio2 = document.getElementById("audio2"); var progress = document.getElementById("progress"); // 更新进度条 function updateProgress() { var duration = audio1.duration + audio2.duration; var currentTime = audio1.currentTime + audio2.currentTime; progress.value = (currentTime / duration) * 100; } // 播放音频 function play() { audio1.play(); audio2.play(); } // 暂停音频 function pause() { audio1.pause(); audio2.pause(); } // 监听音频事件,更新进度条 audio1.addEventListener("timeupdate", updateProgress); audio2.addEventListener("timeupdate", updateProgress); // 控制进度条 progress.addEventListener("input", function() { var duration = audio1.duration + audio2.duration; var currentTime = (progress.value / 100) * duration; if (currentTime < audio1.duration) { audio1.currentTime = currentTime; } else { audio2.currentTime = currentTime - audio1.duration; } }); ``` 在上面的示例中,我们创建了两个 Audio 对象(audio1 和 audio2),一个进度条(progress),并将它们与相应的 HTML 元素关联起来。我们还定义了三个函数:updateProgress,play 和 pause。updateProgress 函数在音频播放时更新进度条,play 和 pause 函数分别控制音频的播放和暂停。 最后,我们将 timeupdate 事件添加到每个音频对象中,以便在音频播放时更新进度条。我们还将 input 事件添加到进度条中,以便用户可以控制进度条并跳转到特定的时间点。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值