2011-05-15 4 views
16

어떻게 각 요소의 너비를 가져 와서 합할 수 있습니까?jQuery : 각 요소의 너비를 가져와 합계합니다.

는 예를 들어, 여기에 HTML입니다 :

<div id="container"> 
<div class="block-item" style="width:10px"></div> 
<div class="block-item" style="width:50px"></div> 
<div class="block-item" style="width:90px"></div> 
<div> 
나는 각각의 요소를 통해 반복 생각할 수 있지만, 어떻게 최대 숫자를 합계 할

?

$('.block-item').each(function(index) { 
    alert($(this).width()); 
}); 

나는 150 (10 + 50 + 90)의 총 수를 얻고 싶습니다.

감사합니다.

답변

24

사용 parseInt(value, radix) :

var totalWidth = 0; 

$('.block-item').each(function(index) { 
    totalWidth += parseInt($(this).width(), 10); 
}); 

은 여기 example fiddle입니다.

+1

아마 수집기에 + =를 원하십니까? –

+0

@Alex 필자가 바이올린을 만들 때 저 스스로 저 멍청한 오타를 들었습니다. –

+0

도움 주셔서 감사합니다! :-) – laukok

2
var w = GetWidths('.block-item'); 

function GetWidths(id) { 
    var i = 0; 

    $(id).each(function (index) { 
     i += parseInt($(this).width(), 10); 
    }); 

    return i; 
} 
+0

변수와 함수를 깨끗하고 품격있는 사용법으로 전달합니다. ($ { 'block-item' 서로. –

관련 문제