ПРОБЛЕМА
ПЕРВОНАЧАЛЬНЫЙ АНАЛИЗ
Похоже, что проблема, с которой вы столкнулись, была в том, что jQuery возвращает вам список нативных элементов DOM
вместо того, чтобы jQuery
элемент для работы.Я подозреваю, что это как-то связано с использованием ванильного цикла, а не с каким-либо методом, предоставляемым jQuery
.
ЗАКЛЮЧИТЕЛЬНОЕ ЗАКЛЮЧЕНИЕ
После работы с версиями javascript и jquery, приведенными ниже, онпохоже, что $('...')
дает вам список собственных элементов DOM
, независимо от структуры цикла.Однако я не понял, что вам нужно будет преобразовать извлеченный узел INTO в элемент jquery
(видимый на $(this)
), что, безусловно, не очень желательно.Для прозрачности оба фрагмента кода доступны в рабочем, минимальном виде ниже.
Пример минимального рабочего кода:
// jQuery only
$(".index_title").each(function() {
const title = $(this).text().trim();
console.log(title);
});
// Javascript only
const titles = document.getElementsByClassName('index_title');
for(var i = 0; i < titles.length; i ++) {
const title = titles[i].innerText.trim();
console.log(title);
}
<html>
<head></head>
<body>
<h3 class="index_title">
<a href="/test/1112">
1 Lorem ipsum dolor sit amet, consectetur adipiscing elit
</a>
</h3>
<h3 class="index_title">
<a href="/test/1112">
2 Lorem ipsum dolor sit amet, consectetur adipiscing elit
</a>
</h3>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</body>
</html>