对于有很多流程的东西,我们希望能够根据不同的阶段,用流程条对应地进行显示,如下所示:

以上功能对应的html代码如下:
<p class="col-md-12 col-lg-3">
<p class="panel panel-default">
<p class="tit06">
<h3>漏洞处理状态</h3>
</p>
<p class="status">
<ul>
<li name="__tab_step1_pub" class="top active">
<p class="info" id="tab_step1">
<h4>
<p class="heading"></p>
待审阅</h4>
<p class="text" >漏洞已提交,等待厂商审阅</p>
</p>
</li>
<li name="__tab_step2_pub" >
<p class="info" id="tab_step2">
<h4>
<p class="heading"></p>
待确认</h4>
<p class="text" >漏洞已开始审阅,等待厂商确认</p>
</p>
</li>
<li name="__tab_step3_pub">
<p class="info" id="tab_step3">
<h4>
<p class="heading"></p>
待修复</h4>
<p class="text" >漏洞已被确认,等待厂商修复</p>
</p>
</li>
<li name="__tab_step4_pub">
<p class="info" id="tab_step4">
<h4>
<p class="heading"></p>
已关闭</h4>
<p class="text" >漏洞修复完毕,厂商关闭漏洞</p>
</p>
</li>
<li name="__tab_step5_pub" >
<p class="info" id="tab_step5">
<h4> <p class="heading"></p>
已公开</h4>
<p class="text" >厂商同意公开此漏洞</p>
</p>
</li>
</ul>
</p>
</p>
</p>这里采用的方法是根据处理的状态,这里是$status,对应的在相应的
.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; }其中用到的jpg资源链接:https://download.csdn.net/download/u012063507/10280748
设置好对应的css后,下一步就是编写js,根据$status的值,在对应的
<script type="text/javascript">
/*根据处理状态,添加或删除对应的样式名*/
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 = '<?php echo $status;?>';
switch(status){
case '1': //待确认
addClass(step2.parentNode, 'active'); //parentNode即为包含step2的外一层标签,此处即为<li>标签
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;
}
</script>这样设置之后,更改$status的状态,为“待修复”后,网页流程实现如下:

查看对应的网页html代码:

得推共享菜园系统是一款专门针对家共享菜园开发的,可以通过基地加盟,轻松实现共享菜园平台建设。系统可以支持wap\公众号\小程序\APP. 基本功能:基地管理、菜园分类、菜园订单、菜园维护、菜园动态等 管理后台: 1.网站设置:站点信息,支付配置,短信配置,邮箱配置等 2.账户管理:账户审核,实名认证,用户充值,黑名单等 3.订单管理:服务订单、确认、处理、退单
0
可以看到在对应的
相关推荐:
以上就是通过js实现流程动态显示的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号