现在我正在尝试使用以下代码在图像中添加一个类:
$('.gallery img').each(function() {
if ($(this).width() > $(this).height()) {
$(this).addClass('landscape');
}
});
代码工作了一些次,但有时候没有添加类,因此我没有应用我的样式。我曾尝试使用和不使用$(document).ready函数,并将其放在图像旁边而不是代码的末尾,但没有任何东西一直将类添加到横向图像中。我不知道还有什么可以尝试的。有什么建议吗?
答案 0 :(得分:0)
还要收听加载事件,因为某些图像可能未加载(因此未知宽度/高度):
// Put this in your $(document).ready
function handleImage($image) {
if ($image.width() > $image.height()) {
$image.addClass('landscape');
}
}
$('.gallery img').each(function() {
handleImage($(this));
}).load(function() {
handleImage($(this));
});
请注意,如果您事先知道尺寸,建议在图片标签上添加width
和height
属性。添加这些属性将无需使用onload
处理程序。