1

HTML

<div class="test"><img src="1.jpg"><img src="2.jpg"><img src="3.jpg"></div>
<div class="test"><img src="4.jpg"></div>

jQuery

var max = 100;
var img = $('div.test img');
if (img.width() > max) {
    img.width = max;
}

.testクラス内で見つかったすべての画像<div>を、定義された最大幅に再スケーリングしてほしい。

4

2 に答える 2

8

このようなもの:

var max = 100;
$('div.test img').each(function() {
    if ($(this).width() > max) {
        $(this).width(max);
    }
});

...すべての画像をループし、テストし、(場合によっては)それぞれの幅を順番に設定します。

代替ソリューション:

var max = 100;
$('div.test img').width(function(i,w) {
    return Math.min(w, max);
});

参考文献:

于 2013-02-23T04:38:07.327 に答える
2

それと同じくらい簡単です:

$('div.test img').css({'max-width' : '100px'});
于 2013-02-23T04:38:03.557 に答える