android长条会员等级进度条,【工作日记】页管 - 用户信息占比 - 长方形百分比 - 进度条...

需求分析

页管会员信息展示页面需要多个百分比显示的长方形进度条,最终效果如下图所示

bV7zv1?w=364&h=38

样式实现

两个主要部分:

1.进度条,内外两个盒子组成,外层做进度条边框,内层做填充效果;

2.百分比显示,一个label标签就够了;

/* 进度条样式设置 开始 */

.progress_bar{

display: inline-block;

width: 200px;

height: 20px;

border-radius: 8px;

border: 1px solid #eee;

overflow: hidden;

box-shadow: 0 0 1px #ccc;

margin: 0px 10px;

}

.progress_bar span{

display: inline-block;

height: 100%;

width: 0;

line-height: 20px;

vertical-align: top;

transition: all .6s;

}

.progress_bar_label{

font-size: 14px;

font-weight: bold;

vertical-align: top;

margin: 0 5px;

}

/* 进度条样式设置 结束 */

功能实现

1.传递参数进来后,进度条的百分比、进度条的颜色、进度条的比例文字还有进度条的整体宽度可以相应的发生变化,后端要求在标签内修改,因此在div上写入自定义属性 data-color 来修改背景色, data-pre 来修改百分比文字, data-width 来修改进度条的整体宽度;增加相应自定义属性后的html内容如下:

100%

2.根据自定义属性的数值来修改相应的参数:

var $color=$('.progress_bar').attr('data-color'); //data-color 为进度条颜色 例#ff6600

var per=$(this).attr('data-per'); //data-per 为进度条 进度值 1-100

var barWidth=$(this).attr('data-width'); //data-width 为进度条宽度 值自定义 单位自动填充px

$('.progress_bar span').css({'background' : $color , 'width' : per + '%'}) //修改进度条颜色和进度条占比

.parent().css({'width' : barWidth}) //修改进度整体宽度

.next().text(per + '%'); //修改进度条文字

3.由于进度条先页管会有多个,因此需要循环修改数组中每个的属性值,添加循环后修改代码如下:

var $color=$('.progress_bar').attr('data-color'); //data-color 为进度条颜色 例#ff6600

$('.progress_bar').each(function () {

var per=$(this).attr('data-per'); //data-per 为进度条 进度值 1-100

var barWidth=$(this).attr('data-width'); //data-width 为进度条宽度 值自定义 单位自动填充px

$(this)

.find('span').css({'background' : $color , 'width' : per + '%'}) //修改进度条颜色和进度条占比

.parent().css({'width' : barWidth}) //修改进度整体宽度

.next().text(per + '%'); //修改进度条文字

})

整合代码

Form

/* 进度条样式设置 开始 */

.progress_bar{

display: inline-block;

width: 200px;

height: 20px;

border-radius: 8px;

border: 1px solid #eee;

overflow: hidden;

box-shadow: 0 0 1px #ccc;

margin: 0px 10px;

}

.progress_bar span{

display: inline-block;

height: 100%;

width: 0;

line-height: 20px;

vertical-align: top;

transition: all .6s;

}

.progress_bar_label{

font-size: 14px;

font-weight: bold;

vertical-align: top;

margin: 0 5px;

}

/* 进度条样式设置 结束 */

function updataProgressBar(){ //更新进度条信息

//进度条设置

var $color=$('.progress_bar').attr('data-color'); //data-color 为进度条颜色 例#ff6600

$('.progress_bar').each(function () {

var per=$(this).attr('data-per'); //data-per 为进度条 进度值 1-100

var barWidth=$(this).attr('data-width'); //data-width 为进度条宽度 值自定义 单位自动填充px

$(this)

.find('span').css({'background' : $color , 'width' : per + '%'})//修改进度条颜色和进度条占比

.parent().css({'width' : barWidth})//修改进度整体宽度

.next().text(per + '%');//修改进度条文字

})

}

$(function () {

updataProgressBar();

})

100%

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值