0

这是我的进度条http://jsfiddle.net/vjNpj/2247/,我希望跨度(百分比值)可以在 div 的宽度改变时一起改变。就像当宽度为 50% 时,跨度将显示 50%..

我能想到的是attr(),但是如何获取它的值呢?

我试过这个但不工作

var percent = $('#progressbar > div').attr('width');
alert(percent);
4

5 回答 5

3

让我们先了解一下

.css(width) 和 .width() 的区别在于后者返回一个没有单位的像素值(例如,400),而前者返回一个没有单位的值(例如,400px)。当需要在数学计算中使用元素的宽度时,建议使用 .width() 方法。

所以你可以这样做,

alert($('#progressbar > div').css("width"));  // 388
alert($('#progressbar > div').prop("width")); // 388px;

小提琴以获得更多理解

于 2013-09-26T05:11:11.573 回答
0
var percent = $('#progressbar > div').width();

或者

var percent = $('#progressbar > div').css('width');


alert(percent);

演示

于 2013-09-26T05:01:31.177 回答
0

这是一个JSFIDDLE可以实现您所追求的

$progress_bar = $('#progressbar');
var progressbar_width = Math.floor(100 * ($progress_bar.find('div').width()) / $progress_bar.width())
$progress_bar.find('span').text(progressbar_width + '%')

每次更新进度条的宽度时,您都必须调用此代码。

于 2013-09-26T05:11:22.640 回答
0

你需要为这项工作做一些数学计算——

var percent = $('#progressbar div').width();
var Percent_Load = parseInt((percent * 100)/ $('#progressbar').width(), 10)
alert(Percent_Load);

尝试这个

于 2013-09-26T05:12:37.690 回答
0

width是一个属性,就像value是一个属性,所以你可能只想得到宽度而不是宽度的。为此,我建议由 amit aggarwal 回答。

于 2013-09-26T05:10:01.187 回答