Получить другой или все классы предмета - PullRequest
3 голосов
/ 05 декабря 2011

Учитывая HTML:

<div id="carrousel-wrapper">
  <div class="region region-carousel-1">
    ....
  </div>
  <div class="region region-carousel-2">
    ....
  </div>
</div>

Я иду через селекторы следующим образом:

  var wrapper = $('#carousel-wrapper .region');
  if(wrapper.length) {
    $(wrapper).each(function(i) {
      var regionClass = 'region-carousel-' + (i + 1);

Но я хочу более чистый способ найти regionClass. Текущий путь ломается в случаях, когда, например .region-carousel-1 не существует.

Как я могу получить «дополнительные» подклассы для .carrousel-wrapper .region?

1 Ответ

2 голосов
/ 05 декабря 2011

В методе each() вы можете использовать ключевое слово this для ссылки на текущий элемент.Кроме того, проверка if (wrapper.length) является избыточной, так как метод each() не выдаст ошибку, если ему не предоставлено никаких элементов.Наконец, вы дважды оборачиваете переменную wrapper в объект jQuery.

Учитывая все вышесказанное, для вас должно работать следующее:

var wrapper = $('#carousel-wrapper .region');
wrapper.each(function(i) {
    var regionClass = $(this).attr("class");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...