利用jquery和BootStrap实现动态滚动条效果


Posted in jQuery onDecember 03, 2018

在某项目中遇到excel导入时客户要求显示滚动条效果,在此基础上使用js为其封装了个进度条类,只需要简单为其创建个div容器就可轻松实现效果,类具体如下:

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width,initial-scale=1" />
    <title>Bootstrap 101 Template</title>
    
    <!-- 最新版本的 Bootstrap 核心 CSS 文件 -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="external nofollow" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    
    <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
    
    <!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
  
  </head>
  <body>
    <!-- 进度条示例 -->
    <!-- <div class="progress">
      <div class="progress-bar" role="progressbar" aria-valuenow="0" 
      aria-valuemin="0" aria-valuemax="100">
        <span class="proText"></span>
      </div>
    </div> -->
    
    <div id="contain"></div>
    
    <button onclick="refreshPro()">refresh</button>
    <button onclick="finish()">finish</button>
    <button onclick="remove()">remove</button>
    
    <script>
      
      var progressBar = null;
      
      function refreshPro() {
        var con = $("#contain");
        progressBar = new ProgressBar();
        progressBar.setContainer(con);
        progressBar.showProcessBar();
      }
      
      function finish() {
        progressBar.finishProcessBar();
      }
      
      function remove() {
        progressBar.destroyProcessBar();
      }
     
    //如果在规定时间内都没有完成进度条,则停留在90%地方,一旦完成立刻到100%
    //写在ajax请求执行开始处进行创建,执行完成后执行完成进度条进度为100%
    //定义进度条类
    //提供构建/展示/销毁等工作
    //container为要包含进入条展示容器
      function ProgressBar($container) {
        
        var self = this;
        
        var container;
        
        if($container != null) {
          container = $container;
        }
        
        var interval; //创建的周期函数对象
        var _id = "progress_bar" + new Date().getTime(); //progressBar随机id编号
        
        self.setContainer = function(_container) {
          container = _container;
        }
        
        //为当前容器加入progress
        self.createProgressBar = function() {
          container.append('<div class="progress" id="'+ _id +'"><div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"><span class="proText"></span></div></div>');
        }
        
        self.beginProcessBar = function() {
          var i = 0;
          interval = setInterval(function() {
            i += 10;
            if(i <= 90) {
              $("#" + _id + " .progress-bar").css({"width":i + "%"});
              $("#" + _id + " .proText").text(i + '%');
            }
          }, 1000);
        }
        
        self.showProcessBar = function() {
          self.createProgressBar();
          self.beginProcessBar();
        }
        
        self.finishProcessBar = function() {
          if(interval != null) {
            $("#" + _id + " .progress-bar").css({"width": "100%"});
            $("#" + _id + " .proText").text('100%');
            clearInterval(interval);
          }  
        }
        
        self.destroyProcessBar = function() {
          $("#" + _id).remove();
        }
        
        return self;
      }
      
    </script>
  </body>
</html>

总结

以上所述是小编给大家介绍的利用jquery和BootStrap实现动态滚动条效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
基于jQuery实现瀑布流页面
Apr 11 jQuery
jquery 禁止鼠标右键并监听右键事件
Apr 27 jQuery
jquery实现楼层滚动效果
Jan 01 jQuery
用jquery获取select标签中选中的option值及文本的示例
Jan 25 jQuery
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
Aug 28 jQuery
jQuery使用each遍历循环的方法
Sep 19 jQuery
一文快速了解JQuery中的AJAX
May 31 jQuery
jquery树形插件zTree高级使用详解
Aug 16 jQuery
jQuery实现移动端图片上传预览组件的方法分析
May 01 jQuery
jQuery实现动态加载瀑布流
Sep 01 jQuery
jQuery实现简单三级联动效果
Sep 05 jQuery
jQuery-ui插件sortable实现自由拖动排序
Dec 01 #jQuery
jquery拖拽自动排序插件使用方法详解
Jul 20 #jQuery
jQuery实现网页拼图游戏
Apr 22 #jQuery
基于jquery实现九宫格拼图小游戏
Nov 30 #jQuery
jQuery实现购物车的总价计算和总价传值功能
Nov 28 #jQuery
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 #jQuery
jQuery实现上下滚动公告栏详细代码
Nov 21 #jQuery
You might like
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
2012/01/16 PHP
Javascript实例教程(19) 使用HoTMetal(1)
2006/12/23 Javascript
JS 分号引起的一段调试问题
2009/06/18 Javascript
js中的数组Array定义与sort方法使用示例
2013/08/29 Javascript
jquery修改属性值实例代码(设置属性值)
2014/01/06 Javascript
jquery操作下拉列表、文本框、复选框、单选框集合(收藏)
2014/01/08 Javascript
使用javascript控制cookie显示和隐藏背景图
2014/02/12 Javascript
jquery form表单序列化为对象的示例代码
2014/03/05 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
浅谈JavaScript中null和undefined
2015/07/09 Javascript
微信小程序 动画的简单实例
2017/10/12 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
Vuejs监听vuex中值的变化的方法示例
2018/12/02 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
vue项目中自定义video视频控制条的实现代码
2020/04/26 Javascript
解决VUE-Router 同一页面第二次进入不刷新的问题
2020/07/22 Javascript
JS变量提升及函数提升实例解析
2020/09/03 Javascript
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
利用python代码写的12306订票代码
2015/12/20 Python
python实现识别手写数字 python图像识别算法
2020/03/23 Python
Python Paramiko模块的使用实际案例
2018/02/01 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
2020/05/19 Python
pandas to_excel 添加颜色操作
2020/07/14 Python
SIDESTEP荷兰:在线购买鞋子
2019/11/18 全球购物
人力资源行政经理自我评价
2013/10/23 职场文书
物业管理应届生求职信
2013/10/28 职场文书
建筑系毕业生自我鉴定
2014/01/24 职场文书
施工安全生产承诺书
2014/05/23 职场文书
环境保护标语
2014/06/20 职场文书
观看信仰心得体会
2014/09/04 职场文书
建设工程授权委托书
2014/09/22 职场文书
2016新年晚会开场白
2015/12/03 职场文书
安装配置mysql及Navicat prenium的详细流程
2021/06/10 MySQL
centos8安装nginx1.9.1的详细过程
2021/08/02 Servers
Java设计模式中的命令模式
2022/04/28 Java/Android