1

いくつかの助けのおかげで、DIV 内の IMG の幅の合計を取得するこの jquery 関数を作成しました。

今、私は新しい問題を抱えています:幅が異なる複数のdiv.ID、どうすれば最もパフォーマンスが高くなりますか?

私のコードはこれです、1 divの場合:

$(window).load(function(){
var widthSum = 0;
$('#oneid.scroll-content-item img').each(function(){
widthSum += $(this).width() + 20;
});
$( ".scroll-content" ).css('width', widthSum);

このコードを異なる ID で数回繰り返す必要がありますか? たとえば、次のような複数のセレクターを作成すると:

$('#oneid.scroll-content-item img, #twoid.scroll-content-item img').each(function(){

一緒に数えますが、別々にする必要があります。

何か案は?

皆さんありがとう!

4

2 に答える 2

2
//this will go over any element with the class "scroll-content-item" seperately
$('.scroll-content-item').each(function(){
    var wrapper = $(this);
    var wrapperWidth = 0;

    //this will go over every img inside the seperate wrappers
    wrapper.find('img').each(function(){
        wrapperWidth += $(this).width() + 20;
    });

    wrapper.css('width', wrapperWidth);
});
于 2012-12-06T23:43:33.340 に答える
0
function getWidth(elem) {
    var widthSum = 0;
    $('img', elem).each(function(){
        widthSum += $(this).width() + 20;
    });
    return widthSum;
}


$(window).load(function(){
    $('.scroll-content').each(function() {
        $(this).css('width', getWidth(this));
    });
});
​
于 2012-12-06T23:42:32.393 に答える