JavaScript如何实现审核流程状态的动态显示进度条

小编给大家分享一下JavaScript如何实现审核流程状态的动态显示进度条,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

为龙山等地区用户提供了全套网页设计制作服务,及龙山网站建设行业解决方案。主营业务为网站制作、成都网站设计、龙山网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

如下所示:

JavaScript如何实现审核流程状态的动态显示进度条

以上功能对应的html代码如下:

 
    
     
     

漏洞处理状态

      
             
                                
               
           待审阅          漏洞已提交,等待厂商审阅

           
                                    
           
           待确认          漏洞已开始审阅,等待厂商确认

          
                                   
                      待修复
           漏洞已被确认,等待厂商修复

                                               
                      已关闭
            漏洞修复完毕,厂商关闭漏洞

                                              
            已公开
          厂商同意公开此漏洞

                                        

这里采用的方法是根据处理的状态,这里是$status,对应的在相应的

  • 的标签中增加样式类  class="active",而样式类active中实现的是在对应位置替换背景图片,即将原来的灰色流程线条替换成绿色的流程线条。即需要设置对应的替换后和替换前的css,这里对应的css如下(\assets\default\threatrules\style.css中的一部分):

    .status ul { padding: 15px; } 
    .status ul li { overflow: hidden; background: url("../threatrules/steps-line.jpg") repeat-y -3px 0px; padding: 26px 0 0px; } 
    .status .active { background: url("../threatrules/steps-line-over.jpg") repeat-y -3px 0px; } 
    .status .end { background: url("../threatrules/steps-line-over.jpg") repeat-y -3px 0px; } 
    .status .end .heading { background: url("../threatrules/steps-over.jpg") no-repeat 0px 0px; } 
    .status .bottom { background: url("../threatrules/steps-line.jpg") repeat-y -3px 0px; } 
    .status .skip { background: url("../threatrules/steps-line-skip.jpg") repeat-y -3px 0px; } 
    .status .skip .heading { background: url("../threatrules/steps-skip.jpg") no-repeat 0px 0px; } 
    .status .active .heading { background: url("../threatrules/steps-over.jpg") no-repeat 0px 0px; } 
    .status .heading { float: left; width: 20px; height: 20px; background: url("../threatrules/steps.jpg") no-repeat 0px 0px; margin-right: 5px; } 
    .status .top { padding-top: 0px; } 
    .status .bottom { background: url("../threatrules/steps-line-b1.jpg") no-repeat 0px 0px; } 
    .status .bottom-active { background: url("../threatrules/steps-line-b2.jpg") no-repeat 0px 0px; }

    设置好对应的css后,下一步就是编写js,根据$status的值,在对应的

  • 中添加class即可,实现此功能的js代码如下:

     
    /*根据处理状态,添加或删除对应的样式名*/ 
    function addClass(elem, className){ //增加类名 
      if(!elem.className){ 
          elem.className = className; 
          return; 
      } 
      var clazz = ' ' + elem.className + ' '; 
      if(clazz.indexOf(' ' + className + ' ') === -1){ 
          elem.className = elem.className + ' ' + className; 
      } 
    } 
     var step1 = document.getElementById('tab_step1'), 
       step2 = document.getElementById('tab_step2'), 
       step3 = document.getElementById('tab_step3') , 
       step4 = document.getElementById('tab_step4'), 
       step5 = document.getElementById('tab_step5'); 
     var status = ''; 
     switch(status){ 
       case '1': //待确认 
         addClass(step2.parentNode, 'active'); //parentNode即为包含step2的外一层标签,此处即为
  • 标签       break;     case '2': //待修复        addClass(step2.parentNode, 'active');        addClass(step3.parentNode, 'active');       break;     case '3'://已关闭       addClass(step2.parentNode, 'active');       addClass(step3.parentNode, 'active');       addClass(step4.parentNode, 'active');       break;     case '4': //已公开       addClass(step2.parentNode, 'active');       addClass(step3.parentNode, 'active');       addClass(step4.parentNode, 'active');       addClass(step5.parentNode, 'end bottom-active');       break;   } 
  • 这样设置之后,更改$status的状态,为“待修复”后,网页流程实现如下:

    JavaScript如何实现审核流程状态的动态显示进度条

    查看对应的网页html代码:

    JavaScript如何实现审核流程状态的动态显示进度条

    可以看到在对应的

  • 标签中添加了class="active",至此设置成功,实现动态显示流程进度。

    以上是“JavaScript如何实现审核流程状态的动态显示进度条”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


    分享题目:JavaScript如何实现审核流程状态的动态显示进度条
    标题路径:http://csdahua.cn/article/joedco.html
    扫二维码与项目经理沟通

    我们在微信上24小时期待你的声音

    解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流