Я рассмотрел похожие вопросы, но я все еще новичок в JQuery, и мне трудно понять решения, и я хотел бы получить точный пример.Как найти родительский элемент дочернего элемента по классу - JQuery
Вот что я пытаюсь сделать:
<div class="parent">
<span class="random">
<span class="child">
Я хочу изменить содержание .innerHTML в «ребенок», только если ребенок обладает родителя (не сразу) родительский класс которого является «родителем».
Я точно знаю, что класс «ребенок» будет существовать, но я НЕ знаю, существует ли на странице «родительский» класс.
Может быть несколько элементов класса «ребенок» и может быть несколькими «родительскими» элементами класса. Если у какого-либо из «детских» детей есть «родитель», все они должны действовать.
Вложенные детские промежутки создаются другой библиотекой, поэтому у меня нет доступа, чтобы дать им идентификаторы или что-то еще.
Я ожидаю поведение что-то вроде этого, но, очевидно, что этот код не прав:
var children = document.getElementsByClass('child');
foreach(children as child){
if (child.hasParent(.parent)){
child.innerHTML = "New Text";
}
- Что такое правильный способ сделать это, и
- Как предотвратить проблемы, если не является ли «родительский» элемент на странице?
Вы оценили этот jQuery, вам нужен ответ jQuery или ванильный javascript-ответ? – Jamiec
Я тоже возьму. Я, вероятно, предпочитаю jQuery - в зависимости от того, что проще и правильнее. Я уже использую jQuery на странице. – dwlorimer
jQuery по-прежнему популярен, но он становится полностью избыточным для своей роли DOM normalizer/simplifier/auto-iterator. Кроме того, аргументация, лежащая в основе не обновления анимации к requestAnimationFrame, выглядит ужасно для меня как пользователя. Я все еще скучаю по нему, когда его иногда нет, даже когда я намеренно не добавляю его в новые приложения. Но стоит изучить основные материалы DOM и API запросовSelectorAll, даже если вы обычно используете JQ. –