基于JQuery的进度条实现

功能描述:顾名思义,既是形象地用柱状条长短变化表示进度变化过程的工具。如下图:

实现

  • 组成:单看进度条的组成,外层是一个父标签,有一定长度,有边框,便于表现总的进度大小;里层是一个子标签,宽度为一定百分比的父标签宽度,并且背景色填充,有文本内容,文本居右,有一定内边距。
  • 动画:为子标签设置一个轮询器,当宽度达到父标签宽度100%时,关闭轮询器,并做自定义操作

代码:

  • HTML
 1 <!doctype html>
 2 <html>
 3     <head>
 4         <meta charset="utf-8">
 5         <title>我的进度条</title>
 6         <link rel="stylesheet" type="text/css" href="progress.css">
 7         <script type="text/javascript" src="jquery-1.11.3.min.js"></script>
 8         <script type="text/javascript" src="progress.js"></script>
 9     </head>
10     <body>
11         <div class="flex-center">
12             <h3>系统加载中,请稍等...</h3>
13             <span class="container">
14                 <span id="progressBar" class="h-100P bar"></span>
15             </span>
16         </div>
17     </body>
18 </html>

引用自己写的CSS样式文件,再引入Jquery的Js文件,和自己写的JS文件。自己写的JS文件依赖于JQuery文件。

  • CSS
 1 .flex-center{
 2     display: flex;
 3     flex-direction: column;
 4     align-items: center;
 5 }
 6 .container{
 7         display: inline-block;
 8         width: 50%;
 9         height: 20px;
10         padding-right: 10px;
11         border: 1px solid #999;
12         border-radius: 5px; 
13 }
14 .h-100P{
15         height: 100%;
16 }
17 .bar{
18         display: inline-block;
19         background: #90bf46;
20         color: white;
21         font-weight: bold;
22         padding: 0 5px;
23         text-align: right;
24         border-radius: 5px;
25         border-right: 1px solid #999;
26 }

父标签引用container样式,子标签引用bar样式。

  • JS
 1 $(document).ready(function () {
 2     var percentage = 0;
 3     var interval = setInterval(function () {
 4         if (percentage < 10000) {
 5             percentage++;
 6             var widthTemp = (percentage / 100).toFixed(1) + '%';
 7             $('#progressBar').css('width', widthTemp);
 8             $('#progressBar').text(widthTemp);
 9         } else {
10             clearInterval(interval);
11             $('h3').text('加载完成!正在为您跳转...');
12             setTimeout(function () {
13                 location = 'helloWorld.html';
14             }, 1500);
15         }
16     }, 10);
17 });

$(document).ready()方法初始化JS文件,JS代码从这里开始执行。当percentage初始化为0,每10毫秒自加一次,自加10000次,既100000毫秒(100秒)后结束循环,循环时,实时改变子标签的宽度,并更改显示的文本内容。

转载于:https://www.cnblogs.com/hjx-blog/p/6670978.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值