Я пытаюсь сделать живой поиск с эффектом в Jquery, и мне не удается поймать первое слово в тексте.Я обертываю каждое слово в промежуток следующим образом:
<span class="word word-this" id="word-#" aria-hidden="true">this</span>
И для сценария я пытаюсь добавить «прочитанный» класс к слову позади того, которое я ищу.Каждый раз, когда я перехожу к следующему слову "это", все слова "это" перед этим имеют класс "прочитанный".Вот так:
var word = function(word) {
$('span').each(function() {
if ($(this).not('.readed') && $(this).hasClass('word-'+word)){
// transformation
$('.word-'+word).first().css('color', 'red').addClass('readed');
}
});
};
Проблема в том, что он улавливает первое вхождение слова, но не находит следующего, он остается на первом.Он не признает, что «прочитанный» класс был добавлен.Я не знаю, проблема ли это .first () или .not () или что-то еще.