进度增加值不能很好地与百分比配合使用
progress increase value not working well with percent
http://jsfiddle.net/2gsNy/1/
我想让它+10,为第一个工作,但第二个和之后它比10增加的方式。
我的 JS
$('#test').on('click', function (e) {
$this = $('#progressbarr > div').width();
var i = $this + 10;
$('#progressbarr > div').css('width', (i + '%'));
$progress_bar = $('#progressbarr');
var progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width());
$progress_bar.find('span').text(progressbar_width + '%');
});
如果使用console.log(),您可以看到您使用的宽度不是百分比,而是像素单位。
尝试直接访问样式属性以检索"xx%"值。
试试下面的jsfiddle
在 Css 中,更改
#progressbarr > div {
background-color: green;
width: 0px;
height: 25px;
border-bottom-left-radius: 4px;
border-top-left-radius: 4px;
}
Jquery
$('#test').on('click', function (e) {
$this = $('#progressbarr > div').width();
var i = $this + 30;
$progress_bar = $('#progressbarr');
var progressbar_width = Math.floor(100 * (i) / $progress_bar.width());
if (progressbar_width <= 100)
{
$('#progressbarr > div').css('width', (i + 'px'));
$progress_bar.find('span').text(progressbar_width + '%');
}
});
在您的情况下,这确实有效:(jsFiddle)
$('#test').on('click', function (e) {
$progress_bar = $('#progressbar');
var i = 30;
$('#progressbar > div').css('width', '+=' + (i + 'px'));
var progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width());
$progress_bar.find('span').text(progressbar_width + '%');
});
但前提是你让你的progressbar
width
300px
.
试试这个 http://jsfiddle.net/devmgs/2gsNy/7/
$('#test').on('click', function (e) {
var width = $('#progressbarr > div').width();
var parentWidth = $('#progressbarr').width();
var percent = 100*width/parentWidth;
console.log(percent);
percent+=10;
$('#progressbarr > div').width(percent+"%");
$('#progressbarr > div').find('span').text(percent + '%');
});
试试这个jsfiddle
$('#test').on('click', function (e) {
var progress = parseInt($(".percentage").html());
$this = $('#progressbarr > div').width();
var i = progress + 10;
$('#progressbarr > div').css('width', (i + '%'));
$progress_bar = $('#progressbarr');
var progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width());
$progress_bar.find('span').text(progressbar_width + '%');
// if
});
相关文章:
- 如果宽度是百分比,如何设置以px为单位的图像高度
- 使用javascript可以设置css动画的当前百分比
- 当我使用高度百分比时,谷歌地图javascript api不会显示
- Javascript差异百分比数学
- 我如何使脚本使用百分比
- 根据元素高度和宽度的百分比变化增加或减少字体大小
- 在Javascript中计算并显示具有2个税收百分比的现有总值
- d3使用样式Tween的百分比转换
- 计算HTML表TD中两个数字之间的百分比
- 如何从二进制int中获取百分比,每个位表示x%
- 百分比计算错误
- CSS将百分比转换为像素
- javascript函数,它将数组作为输入,将每个数组元素增加1,并返回增加值的新数组
- 计算输入的每个单词组合的百分比
- 使用百分比、类别名称和箭头渲染标签
- gruntjs理解语法-<%=小于百分比符号
- 计算条形图百分比
- 如何使用jquery/javascript跟踪下载百分比
- 如何将CSS背景位置属性从百分比转换为像素
- 进度增加值不能很好地与百分比配合使用