#javascript #jquery
#javascript #jquery
Вопрос:
У меня есть html-страница, где она полностью заменена другим html. В источнике страницы есть мой элемент, но в DOM его нет.
Ниже приведен мой jQuery
код, который работает нормально:
var account = parseInt($(".adajacent_links.pd0").find("li").first().text());
В то время как следующий код работает только перед заменой содержимого. Он не работает после замены DOM.
var account = parseInt(document.querySelectorAll(".adajacent_links.pd0 > li:first-child")[0].innerText);
даже document.querySelectorAll(".adajacent_links")
или document.querySelector(".adajacent_links")
ничего не возвращает . adajacent_links
класс присутствует только в исходном коде страницы, но не в DOM. Как это работает нормально jQuery
?
Комментарии:
1. Поскольку вы просто хотите вернуть один элемент, используйте
querySelector
и нет[0]
.2. Два селектора немного отличаются. Первый найдет любой
li
на любом уровне внутри.adajacent_links.pd0
. Второй будет находить толькоli
те, которые являются прямыми дочерними элементами, из-за>
3. Вероятно, это не имеет значения, поскольку оно одинаково в обоих случаях, но, может быть, вы неправильно написали смежно?