Я пытаюсь использовать jQuery для определения ориентации ряда изображений.После обнаружения я хочу добавить класс для обозначения этого, то есть .landscape
.
. Приведенный ниже код, по-видимому, оценивает только первое изображение, с которым он сталкивается, а затем применяет его ко всем последующим изображениям.Например, если первое изображение имеет альбомную ориентацию, оно будет применено ко всем изображениям, включая портретное или квадратное.
Неправильно ли я использую выражение .each()
?
Спасибо.
HTML
<div class="carousel-cell">
<img src="domain.com" data-width="100" data-height="200" />
</div>
<div class="carousel-cell">
<img src="domain.com" data-width="200" data-height="100" />
</div>
<div class="carousel-cell">
<img src="domain.com" data-width="100" data-height="100" />
</div>
JQUERY
// Detect image orientation
$('.carousel-cell').each(function () {
"use strict";
var img = $('img');
if (img.attr('data-width') > img.attr('data-height')){
// Landscape
img.removeClass().addClass('landscape');
} else if (img.attr('data-width') < img.attr('data-height')){
// Portrait
img.removeClass().addClass('portrait');
} else {
// Equal (Square)
img.removeClass().addClass('square');
}
});