我正在为使用第三方平台的客户端工作,该平台只允许我覆盖CSS并部分编辑HTML模板。我也可以通过添加Javascript来进行更改,在这种情况下,我需要根据缩略图图像的维度附加类和ID,这些缩略图图像在列表项中表示为图像。我开始了一个小提琴,用div替换图像。根据图像尺寸添加属性
http://jsfiddle.net/dbudell/SYTsP/4/
这里的HTML:
<ul>
<li><div class="item item1"></div></li>
<li><div class="item item2"></div></li>
</ul>
而CSS。正如你所看到的,我已经设置.item1为“肖像”的尺寸和.item2为“横向尺寸我要附加到基于这些维度的ID:
li {
display:inline-block;
margin:5px;
}
.item1, .item2 {
border:1px solid #333;
}
.item1 {
width:100px;
height:200px;
}
.item2 {
width:200px;
height:100px;
}
#fill-portrait {
background:#333;
}
#fill-landscape {
background:#888;
}
而这里的jQuery代码,这似乎是语法正确的,但产生任何结果。不知道是什么问题。
var itemWidth = $('.item').width();
var itemHeight = $('.item').height();
if (itemWidth > itemheight) {
$('.item', this).addAttr('id','fill-landscape');
} else {
$('.item', this).addAttr('id','fill-portrait');
}
同样,链接到小提琴是http://jsfiddle.net/dbudell/SYTsP/4/。
源代码中存在拼写错误:'itemheight' =>'itemHeight'。在你解决这个问题之后,请看Joeltine的答案。 –
此外,重复的ID是一个非常糟糕的主意。 –
为什么你想在你已经拥有课程时追加ID? –