2

.each()のクラス内の各画像の幅を測定する関数があり.itemます。すべての幅を測定してから変数に追加する必要があります。次に、変数を関数から渡す必要があります。以下のこの機能は半分しか実行されていません。終了する方法がわかりません。

どんな助けでも大歓迎です。

$('.item img').each(function () {

    var i = $(this).width();

});

$('.overview').css('width', i);
4

3 に答える 3

9
var i = 0;

$('.item img').each(function () {

    i = i + $(this).width();

});

$('.overview').css('width', i);
于 2012-06-07T10:15:50.033 に答える
4
var i = 0;

$('.item img').each(function () {
    i += $(this).width();
});

$('.overview').css('width', i);
于 2012-06-07T10:16:15.617 に答える
3

アイテムを繰り返し処理していましたが、幅が合計ではなく上書きされています。

var i = $(this).width();

これは

var i += $(this).width();

また、関数呼び出し間でその値を保持するように、関数の外部でIを定義します。変数名iは、ここではあまり適切ではありません。totalImagesWidthのようなものである可能性があります。

これを試して

var i = 0;
$('.item img').each(function () {

    i += $(this).width();

});


$('.overview').css('width', i);

// you can pass this to some other function as well
somefunction(i);
于 2012-06-07T10:15:45.543 に答える