jQuery拖动进度条

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://www.w3school.com.cn/jquery/jquery.js"></script>
<script type="text/javascript">
	$(document).ready( function() {
	$('.taskBox').delegate('.taskBoxLinks','mousemove',function(e){		
		var $mouse = e.pageX - $(this).offset().left;
		var $span = Math.round($mouse/22.5)*10;		
		$(this).find('h4').stop().animate({width:$span+'%'},50);		
		$(this).next('span').text($span+'%');
	}).delegate('.taskBoxLinks','mouseleave',function(){
		$(this).find('h4').stop().animate({width:'10%'},50);
		var $mousex = $(this).find('h3').width();
		var $spanx = Math.round($mousex/22.5)*10;
		if($spanx==100){
			$(this).next('span').text('进度完成')	
		}else{
			$(this).next('span').text($spanx+'%');
		}	
	}).delegate('.taskBoxLinks','click',function(e){
		var $mouse = e.pageX - $(this).offset().left;
		var $span = Math.round($mouse/22.5)*10;
		$(this).find('h3').stop().animate({width:$span+'%'},100);
		if($span==100){
			$(this).next('span').text('进度完成')	
		}			
	});		
});
</script>
<title>进度条</title>
<style type="text/css">
body,td,th {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 12px;
}
h1{ font-size:16px; color:#999; font-weight:normal; text-align:center; line-height:90px; border-top:1px dashed #ddd; margin-top:50px;}
*{ margin:0; padding:0;}
.taskBoxLinks { float:left; width:225px; height:7px; font-size:0; line-height:0; background:#f2f2f2; border:1px solid #dedede;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px; position:relative; margin-top:8px; margin-right:10px; cursor:pointer;}
.taskBoxLinks h3,.taskBoxLinks h4{ position:absolute; left:-1px; top:-1px; height:7px; font-size:0; line-height:0; width:10%; background:#a3d9f4; border:1px solid #187aab; -moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px; z-index:99;}
.taskBoxLinks h4 { border:1px solid #91cdea; background:#f5fafc; z-index:88;}
.taskBox { width:360px; margin:40px auto; color:#666;}
</style>
</head>
<body>
	<div class="taskBox">		
		<div class="taskBoxLinks"><h3 style="width:10%;"></h3><h4></h4></div>进度<span>10%</span>
	</div>
    <div class="taskBox" style="padding-left:100px;">		
		<div class="taskBoxLinks"><h3 style="width:60%;"></h3><h4></h4></div>进度<span>60%</span>
	</div>
    <div class="taskBox">		
		<div class="taskBoxLinks"><h3 style="width:20%;"></h3><h4></h4></div>进度<span>20%</span>
	</div>
    <h1>by <a href="http://www.wweya.com">www.wweya.com</a></h1>
</body>
</html>

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: jQuery拖动进度条是一种可用于网页中的互动元素,可以实现对进度条拖动来改变其进度。以下是实现这种拖动进度条的步骤: 1. 首先,在HTML中创建一个进度条的容器元素,可以是一个div或者其他合适的元素。给这个容器添加一个唯一的ID,方便在jQuery中选择和操作。 2. 使用CSS样式来美化进度条,可以设置进度条的宽度、颜色、边框样式等。可以使用CSS伪元素来实现进度条上的提示文字或者图标。 3. 在jQuery脚本中使用选择器选中进度条容器元素,并使用`.draggable()`方法来使其可拖动。该方法可以传入参数来设置拖动的约束范围和拖动时的各种回调函数。 4. 设置拖动时的回调函数,可以在拖动过程中触发一些事件,比如改变进度条的宽度、更新进度的数值显示等。可以使用`.css()`方法来改变进度条的样式。 5. 拖动结束后,可以使用`.mouseup()`方法来触发一些其他的事件,比如向服务器发送拖动进度条的数值,或者更新相关数据等。 总之,使用jQuery的`draggable()`方法可以很方便地实现拖动进度条的效果。通过设置相关的回调函数,可以实现与进度条相关的其他操作。这样用户就可以拖动进度条来改变进度,从而实现更丰富的交互。 ### 回答2: jQuery drag进度条是一种基于jQuery库的插件,用于创建可拖动进度条。它能够实现通过鼠标拖动来改变进度条的值。下面是一个简单的示例: 首先,在HTML中添加一个进度条的容器: ```html <div id="progressBar" style="width: 300px; height: 20px; background-color: #EEE;"> <div id="progress" style="width: 0%; height: 100%; background-color: #00F;"></div> </div> ``` 然后,在JavaScript中使用jQuery drag功能来实现可拖动效果: ```javascript $(function() { $("#progress").draggable({ axis: "x", // 限制只能在水平方向拖动 containment: "#progressBar", // 拖动范围限制在容器内部 drag: function(event, ui) { var progressBarWidth = $("#progressBar").width(); var progressWidth = ui.position.left; var progressPercentage = Math.round((progressWidth / progressBarWidth) * 100); $("#progress").css("width", progressPercentage + "%"); }, stop: function(event, ui) { var progressBarWidth = $("#progressBar").width(); var progressWidth = ui.position.left; var progressPercentage = Math.round((progressWidth / progressBarWidth) * 100); console.log("Progress: " + progressPercentage + "%"); } }); }); ``` 上述代码使用了`draggable()`方法将`#progress`元素设为可拖动的。`axis`选项设置为`"x"`以限制只能在水平方向拖动。`containment`选项限制拖动范围在`#progressBar`容器内部。 在`drag`事件中,根据拖动位置的变化,计算进度条的宽度并设置给`#progress`元素。在`stop`事件中,获取最终的进度百分比并打印到控制台。 这样,当拖动进度条时,进度条的宽度会相应改变,实现了可拖动进度条效果。 ### 回答3: Jquery drag进度条是一种使用Jquery库创建的可拖动进度条。通过使用Jquery的拖放功能,我们可以使进度条的位置可随意拖动。 首先,我们需要引入Jquery库,并创建一个HTML元素来表示进度条。可以使用div元素,并设置其宽度、高度和背景颜色等样式属性。除此之外,也需要为进度条添加一个处理拖放事件的类名或id。 接下来,使用Jquery的drag()方法,将进度条元素作为参数传入。该方法会为进度条元素添加拖放功能,并允许用户通过鼠标拖动来改变进度条的位置。 在拖放事件处理函数中,我们可以获取用户拖动的距离,并根据需要来改变进度条的宽度或位置。可以通过Jquery的css()方法来修改进度条的样式属性。例如,可以根据鼠标拖动的距离来改变进度条的宽度百分比,从而反映进度的变化。 同时,我们还可以添加一些事件处理函数,如拖动开始时的回调函数、拖动结束时的回调函数等。这些函数可以在拖动过程中执行自定义的逻辑,如更新进度条的显示文本、向服务器发送拖动事件等。 最后,可以根据实际需要,为进度条添加其他功能,如设置进度条的最小值和最大值,限制拖动的范围等。 总之,通过使用Jquery的drag()方法,我们可以轻松地创建一个可拖动进度条,并根据用户的拖动来实时更新进度的显示。这样的进度条可以应用于各种场景,如文件上传、下载进度显示等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值