当条形尚未达到100%时,我想保持边缘没有圆角效果..我所做的是使用如果然后更改条形的css,但它落后一步..看看< / p>
即使达到100%,你也需要再次击中
$('#test').on('click', function (e) {
$progress_bar = $('#progressbarr');
//convert to percent
var progressbar_width;
progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width());
var i = progressbar_width + 10; // change in percent
if (i < 101) {
$progress_bar.find('div').css('width', (i + '%'));
$progress_bar.find('span').text(i + '%');
} else {
$progress_bar.find('div').css('border-top-right-radius', '4px');
$progress_bar.find('div').css('border-bottom-right-radius', '4px');
}
});
答案 0 :(得分:4)
你可以这样做:
if (i <= 100) {
$progress_bar.find('div').css('width', (i + '%'));
$progress_bar.find('span').text(i + '%');
if(i === 100)
$(this).triggerHandler('click');
}
答案 1 :(得分:3)
答案 2 :(得分:1)
<强> DEMO 强>
只需在您的else语句
之前添加以下代码即可$progress_bar.find('div').css('border-top-right-radius', '4px');
$progress_bar.find('div').css('border-bottom-right-radius', '4px');
答案 3 :(得分:0)
只需使用以下代码
即可$('#test').on('click', function (e) {
$progress_bar = $('#progressbarr');
//convert to percent
var progressbar_width;
progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width());
var i = progressbar_width + 10; // change in percent
if (i < 101) {
$progress_bar.find('div').css('width', (i + '%'));
$progress_bar.find('span').text(i + '%');
if( i == 100) {
$progress_bar.find('div').css('border-top-right-radius', '4px');
$progress_bar.find('div').css('border-bottom-right-radius', '4px');
}
}
// if
});