我提到了这个页面,但我一定做错了:jQuery check if element have specific attribute
基本上,如果图像具有style =“float:left”属性,我想添加一个“img-left”类,如果style =“float:right”,我想添加“img-right”我的HTML看起来像这样:
<img class="content-img" style="float: left;" src="/images/my-img.jpg">
我希望它看起来像这样:
<img class="content-img img-left" style="float: left;" src="/images/my-img.jpg">
这是我尝试过的:
if ($('.content-img').css('float' == 'left')) {
$(this).addClass('img-left');
}
else {
$(this).addClass('img-right');
}
这会产生JS错误,但我无法理清原因。任何帮助将不胜感激。
谢谢,沃恩
答案 0 :(得分:6)
我建议将其简化为以下内容:
$('.content-img').addClass(
function(){
var floated = $(this).css('float');
return floated ? 'img-' + floated : '';
});
这将检索float
属性,如果已设置(具有真值),则返回与img-
变量的值连接的字符串floated
。
答案 1 :(得分:3)
这是正确的,但在if
条件下有一个拼写错误。应该是这样的:
if ($('.content-img').css('float') == 'left') {
$('.content-img').addClass('img-left');
}