По какой причине может удваиваться в JS index элемента?

Здравствуйте, получаю индекс текущего элемента и вставляю его в нужное место вот таким кодом:
var stepList = $('h2');// Ищем все элементы, получаем список элементов
 //Отображаем на экране текущий шаг
stepList.each(function() {// Проходим по каждому элементу циклом
     var self = $(this);// Получаем текущий элемент в цикле
     var index = self.index();// Узнаем его порядковый номер относительно списка элементов stepList
     self.find('.current').append(index+1);// В H3 вставляем номер
});


Раньше всё работало прекрасно, но после того, как подключил этот плагин www.jquery-steps.com то каждый индекс стал удваиваться.

JS не очень хорошо знаю, но мне кажется, что каким-то образом произошёл конфликт. Интересно узнать, как это можно побороть, что именно надо поправить в коде, что бы всё работало?
  • Вопрос задан
  • 148 просмотров
Решения вопроса 2
petermzg
@petermzg
Самый лучший программист
.index()
"Ищет указанный элемент в наборе jQuery и возвращает его индекс (порядковый номер в наборе начиная с 0)"
У вас набор этот состоит из одного элемента $(this), так что self.index() всегда вернет 0.
Лучше сделать так:
stepList.each(function(index) {
  $(this).find('.current').append(index+1);
}
Ответ написан
Stalker_RED
@Stalker_RED
RTFM: https://api.jquery.com/index/

Не self.index() а stepList.index(this);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы