Справочник API

.index() в jQuery

Содержание статьи
  • Категории: Miscellaneous › DOM Element Methods

    Ищет указанный элемент в наборе jQuery и возвращает его индекс (порядковый номер в наборе начиная с 0) или -1, если не находит.

Синтаксис и описание:

  • Добавлено в jQuery 1.4.index( )

  • Добавлено в jQuery 1.4.index( selector )

  • Добавлено в jQuery 1.0.index( element )

  • Без аргументов .index() возвращает позицию первого элемента набора среди его соседей-элементов внутри родителя — порядковый номер среди «братьев» по DOM.

    С селектором — позицию первого элемента набора среди элементов всего документа, подходящих под этот селектор.

    С DOM-элементом или объектом jQuery — позицию переданного элемента внутри исходного набора jQuery, на котором вызван .index() (а не внутри документа).

Возвращаемое значение: (число) Позиция с 0; -1, если элемент не найден в соответствующем контексте.

Параметры:

  • selector – (строка) селектор, среди подходящих под который элементов документа ищется позиция.

  • element – (элемент DOM | объект jQuery) элемент, чью позицию внутри текущего набора нужно найти.

  1. Примечание:

    Три формы решают разные задачи: не путайте «позицию среди соседей по DOM» (без аргументов или с селектором) и «позицию внутри уже отобранного набора jQuery» (с элементом на входе).

  2. Примечание:

    Если исходный набор пуст, .index() без аргументов вернёт -1.

  3. В jQuery 3.x и 4.0:

    Метод не менялся, работает без изменений в 3.7.1 и 4.0. Частичный нативный аналог для позиции среди соседей — Array.prototype.indexOf.call(el.parentNode.children, el).

Примеры:

  1. Определить номер вкладки, на которую кликнули, и переключить соответствующую панель.

    $('.tabs').on('click', '.tab', function() {
      var i = $(this).index();
      $('.tab-panel').eq(i).addClass('active').siblings().removeClass('active');
    });
  2. Найти позицию текущего шага среди всех элементов .step в документе.

    var pos = $('#current-step').index('.step');
  3. Найти позицию конкретного DOM-элемента внутри набора (-1, если он не входит в набор).

    var items = $('.gallery img');
    var clicked = document.querySelector('.gallery img.active');
    console.log(items.index(clicked));

[ наверх ]

Вопросы и ответы

Для чего используется .index() в jQuery?

Ищет указанный элемент в наборе jQuery и возвращает его индекс (порядковый номер в наборе начиная с 0) или -1, если не находит.

Поиск по материалам

Начните вводить — поиск работает по заголовкам и тексту.

Esc — закрытьВсе материалы →