使用每个使用jQuery计算元素内的总宽度

时间:2013-07-29 20:40:57

标签: jquery each

我正在尝试计算一个部分中所有div的总宽度。我想在.mainScroll中计算每个div的宽度,将它们相加,然后将该部分的宽度设置为该内容的总和。这是我的HTML标记。

    <section>
        <div class="mainScroll">
             <div>some content</div>
             <div>some content</div>
             <div>some content</div>
        </div>
    </section>
    <section>
        <div class="mainScroll">
             <div>some content</div>
             <div>some content</div>
             <div>some content</div>
        </div>
    </section>

到目前为止,这是我的jQuery:

var totalWidth = 0;

$('section').each(function(){
    var select = $(this).find('.mainScroll div');
    select.each(function(index) {
        totalWidth += parseInt($(this).outerWidth(true), 10);   
    });

    $(this).css({ 'width' : totalWidth});
    var totalWidth = 0;

});

这输出NaN。如何设置它以使其循环遍历每个部分,然后遍历各个部分的各个部分,将其高度相加,然后将该部分设置为具有该精确高度?

1 个答案:

答案 0 :(得分:0)

看这个fiddle

$('section').each(function(){
    var totalWidth = 0;
    var select = $(this).find('.mainScroll div');
    select.each(function(index) {
        totalWidth = +(totalWidth)+(+$(this).outerWidth(true));   
    });

    //$(this).css({ 'width' : totalWidth});
    alert(+(totalWidth)); //  total
    var totalWidth = 0;
});