16

我有一个 div,我想知道是否有办法使用 jQuery 获取它的宽度百分比。

这是我的代码

$(document).ready(function(){
   var f = $('.f').width();
      alert(f);    
});

我试图%用作这样的参数width(%),但这是将宽度设置为%不以百分比格式获取值。有人可以告诉我应该怎么做才能获得百分比吗?

非常感谢任何帮助。

小提琴

4

4 回答 4

43

要使用您的示例代码...

$(document).ready(function(){
   var f = $(".f").width() / $('.f').parent().width() * 100;
   alert(f);    
});

工作jsfiddle ...

于 2013-09-13T12:12:09.600 回答
6

如果你想要相对于身体的宽度:

var percent =  $('.f').width() / $('body').width() * 100;

console.log(Math.round(percent).toFixed(2)); 

这是你要求的吗?

http://jsfiddle.net/aXRxP/5/

于 2013-09-13T12:10:43.473 回答
1

您将需要获取视口宽度,然后根据视口宽度计算您的元素宽度百分比。

var width = $('#someElt').width();
var parentWidth = $('#someElt').offsetParent().width(); // this will return parent element's width which also can be replaced with docuent to get viewport width
var percent = 100*width/parentWidth;
于 2013-09-13T12:09:50.507 回答
0
$(document).ready(function(){
   var f = $('.f').width();
    var pw = $('.f').parent().width();
    var rate = (f/pw*100) + '%';
    $('.f').html( rate);    
});

它是父项的。因此,如果您将 .f div 的宽度评定为父项的宽度,您将获得该值。

于 2013-09-13T12:13:45.297 回答