我正在尝试在图像上添加一些样式属性,但前提是它已经包含另一个属性。我或多或少地弄清楚如何使用以下方法:
if ($('#content p img').css('float') == 'right')
$('#content p img').css('margin-left', '20px').css('margin-bottom', '20px');
但这显然会改变所有图像,因此它们有左边距和下边距。我怎样才能这样做,但只为具有float: right;
属性的图像添加边距?
答案 0 :(得分:5)
使用filter
:
$('#content p img').filter(function() {
return this.style.float === "right";
}).css('margin-left', '20px').css('margin-bottom', '20px');
如果您愿意,可以只调用一次css
,然后传递一组更改:
$('#content p img').filter(function() {
return this.style.float === "right";
}).css({
'margin-left': '20px',
'margin-bottom': '20px'
});
答案 1 :(得分:4)
尝试:
$('#content p img').each(function(){
if($(this).css('float') == 'right')
$(this).css('margin-left', '20px').css('margin-bottom', '20px');
})