全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jQuery实现可拖动进度条实例代码

html

   <div class="progress">
   <div class="progress_bg">
    <div class="progress_bar"></div>
   </div>
   <div class="progress_btn"></div>
   <div class="text">0%</div>
  </div>

css

  .progress{position: relative; width:300px;margin:100px auto;}
  .progress_bg{height: 10px; border: 1px solid #ddd; border-radius: 5px; overflow: hidden;background-color:#f2f2f2;}
  .progress_bar{background: #5FB878; width: 0; height: 10px; border-radius: 5px;}
  .progress_btn{width: 20px; height: 20px; border-radius: 5px; position: absolute;background:#fff; 
  left: 0px; margin-left: -10px; top:-5px; cursor: pointer;border:1px #ddd solid;box-sizing:border-box;}
  .progress_btn:hover{border-color:#F7B824;}

js 

$(function(){
    var tag = false,ox = 0,left = 0,bgleft = 0;
    $('.progress_btn').mousedown(function(e) {
     ox = e.pageX - left;
     tag = true;
    });
    $(document).mouseup(function() {
     tag = false;
    });
    $('.progress').mousemove(function(e) {//鼠标移动
     if (tag) {
      left = e.pageX - ox;
      if (left <= 0) {
       left = 0;
      }else if (left > 300) {
       left = 300;
      }
      $('.progress_btn').css('left', left);
      $('.progress_bar').width(left);
      $('.text').html(parseInt((left/300)*100) + '%');
     }
    });
    $('.progress_bg').click(function(e) {//鼠标点击
     if (!tag) {
      bgleft = $('.progress_bg').offset().left;
      left = e.pageX - bgleft;
      if (left <= 0) {
       left = 0;
      }else if (left > 300) {
       left = 300;
      }
      $('.progress_btn').css('left', left);
      $('.progress_bar').animate({width:left},300);
      $('.text').html(parseInt((left/300)*100) + '%');
     }
    });
   });

效果图

实现原理

  首先是用mousedown()鼠标按下事件保存一个状态值,mouseup()鼠标抬起事件取消该状态,再同时配合mousemove()鼠标移动事件,实现按住拖动的效果。

在鼠标移动的同时去改变精度条的长度和按钮的相对左部的距离。

  然后就是距离的计算,主要利用的就是pageX() 属性。pageX是鼠标指针相对于文档的左边缘的位置。在鼠标按下是就记录相对位置,在鼠标移动后就可求出鼠标移动的距离。从而改变按钮位置和进度条长度。

以上所述是小编给大家介绍的jQuery实现可拖动进度条demo,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# jquery  # 拖动进度条  # 基于jquery步骤进度条源码分享  # jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】  # jQuery实现的手动拖动控制进度条效果示例【测试可用】  # jQuery NProgress.js加载进度插件的简单使用方法  # jquery-file-upload 文件上传带进度条效果  # jquery网页加载进度条的实现  # jquery 步骤进度轴插件的实现代码  # 鼠标  # 求出  # 拖动  # 按下  # 小编  # 进度条  # 在此  # 给大家  # 就可  # 相对于  # 所述  # 给我留言  # 感谢大家  # 鼠标点击  # 疑问请  # 有任何  # 鼠标指针  # 边缘  # 文档  # height 


相关文章: 重庆市网站制作公司,重庆招聘网站哪个好?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何通过.red域名打造高辨识度品牌网站?  如何快速配置高效服务器建站软件?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  ,网页ppt怎么弄成自己的ppt?  如何做网站制作流程,*游戏网站怎么搭建?  微信h5制作网站有哪些,免费微信H5页面制作工具?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  网站网页制作专业公司,怎样制作自己的网页?  linux top下的 minerd 木马清除方法  制作农业网站的软件,比较好的农业网站推荐一下?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  网站制作价目表怎么做,珍爱网婚介费用多少?  c# 在高并发场景下,委托和接口调用的性能对比  Android滚轮选择时间控件使用详解  如何快速辨别茅台真假?关键步骤解析  Android自定义控件实现温度旋转按钮效果  制作网站的软件免费下载,免费制作app哪个平台好?  Swift开发中switch语句值绑定模式  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何用美橙互联一键搭建多站合一网站?  如何在IIS中新建站点并解决端口绑定冲突?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  如何快速打造个性化非模板自助建站?  广州美橙建站如何快速搭建多端合一网站?  如何在自有机房高效搭建专业网站?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  如何在Windows 2008云服务器安全搭建网站?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  微信小程序 五星评分(包括半颗星评分)实例代码  威客平台建站流程解析:高效搭建教程与设计优化方案  如何在橙子建站中快速调整背景颜色?  如何配置FTP站点权限与安全设置?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  建站之星展会模版如何一键下载生成?  如何在Tomcat中配置并部署网站项目?  英语简历制作免费网站推荐,如何将简历翻译成英文?  微信推文制作网站有哪些,怎么做微信推文,急?  广德云建站网站建设方案与建站流程优化指南  香港服务器部署网站为何提示未备案?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  建站之星导航配置指南:自助建站与SEO优化全解析  网站代码制作软件有哪些,如何生成自己网站的代码?  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  简历在线制作网站免费版,如何创建个人简历?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。