1

画像にいくつかのスタイルプロパティを追加しようとしていますが、すでに別のプロパティが含まれている場合に限ります。私は多かれ少なかれこれを行う方法を次のように理解しています:

if ($('#content p img').css('float') == 'right')
    $('#content p img').css('margin-left', '20px').css('margin-bottom', '20px');

しかし、これは明らかにすべての画像を変更するため、左右に余白があります。どうすれば同じことができますが、float: right;プロパティを持つ画像にマージンを追加するだけですか?

4

2 に答える 2

5

使用filter

$('#content p img').filter(function() {
    return this.style.float === "right";
}).css('margin-left', '20px').css('margin-bottom', '20px');

また、必要に応じて1回だけ電話をかけcss、一連の変更を渡して次のことを行うことができます。

$('#content p img').filter(function() {
    return this.style.float === "right";
}).css({
    'margin-left':   '20px',
    'margin-bottom': '20px'
});
于 2012-12-07T10:30:28.123 に答える
4

試す:

$('#content p img').each(function(){
    if($(this).css('float') == 'right') 
        $(this).css('margin-left', '20px').css('margin-bottom', '20px');
})
于 2012-12-07T10:30:37.530 に答える