Есть ли способ переместить шаги в DOM через JQuery или Javascript? (предпочтительно JQuery)
Чтобы избежать последовательности меток parent()
, мне лучше использовать что-то такое, что могло бы означать что-то вроде этого:
$('.myElement').parent().parent().parent().fadeIn();
Это должно .final
элемент .final
в следующем примере:
<div class="final">
<div>
<div>
<div class="myElement"></div>
</div>
</div>
</div>
Это для чего .parents()
. Чтобы получить N + 1-го родителя, выполните:
$(this).parents()[N])
Например, $(this).parents()[0]
является первым родителем.
.final
должен быть [2]
, так как он третий в списке родителей.
Предполагая, что .final
является элементом-предком элемента .myElement
, вы можете использовать .closest()
Для каждого элемента в наборе получите первый элемент, который соответствует селектору, путем тестирования самого элемента и прохождения через своих предков в дереве DOM.
$('.myElement').closest('.final').fadeIn();
.final
. Но, предполагая, что это находится в фактической разметке, попробуйте.closest('.final')
.