如果元素的组合宽度<身体改变div的ID?

时间:2011-09-05 18:31:23

标签: jquery

我需要获得一组div(.image-div)的组合宽度,如果它们的组合宽度小于主体宽度,则将#makeMeScrollable的ID更改为#makeMeScrollable2

这是我到目前为止所做的:

$(document).ready(function() {
    $('#makeMeScrollable').each(function() {
        var totalImageWidth = 0;

        $(".image-div", this).each(function () {
          totalImageWidth += $(this).width();
        });

    if (totalImageWidth < body ) {
    $(this).attr('id', 'makeMeScrollable2');
    }

    });
});

如果我用静态数字替换'body',代码就可以了,所以我几乎必须在那里。我认为这只是一个语法问题,但我已经尝试了我能想到的每一个变体。

更新感谢@ShankarSangoli我使用了以下内容:

$(document).ready(function() {
$('#makeMeScrollable').each(function() {
    var totalImageWidth = 0;

    $(".image-div", this).each(function () {
      totalImageWidth += $(this).width();
    });

    if (totalImageWidth < $(document.body).width() ) {
       $(this).attr('id', 'makeMeScrollable2');
    }

});
});

但他们是否有办法改变这条线?:

if (totalImageWidth - 1000 < $(document.body).width() ) {

2 个答案:

答案 0 :(得分:1)

试试这个

$(document).ready(function() {
    $('#makeMeScrollable').each(function() {
        var totalImageWidth = 0;

        $(".image-div", this).each(function () {
          totalImageWidth += $(this).width();
        });

        if (totalImageWidth < $(document.body).width() ) {
           $(this).attr('id', 'makeMeScrollable2');
        }

    });
});

答案 1 :(得分:0)

您需要使用parseint功能:)