Как выбрать все предыдущие родственные элементы элемента с помощью jquery?
Допустим, у меня есть div со следующим содержанием:
<div id="divOne">
<p>one</p>
<p>two</p>
<div id="aggregatedDiv"></div>
<p> three </p>
</div>
Так есть ли способ удалить первые три элемента? Я не знаю количества элементов. Я просто хочу удалить все до id="aggregatedDiv"
включая его.
Я должен добавить результат в виде html к некоторым другим div.
$("#otherDiv").append(resultOfSlicedDivOneHtml);
3 ответа:
Вы можете использовать
.prevAll()
к выбору всех предыдущих родственных элементов и использованию.addBack()
к добавлению предыдущего селектора (#aggregatedDiv
) в текущий набор выделенного элемента.
$("#aggregatedDiv").prevAll().addBack().css("color", "red");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="divOne"> <p>one</p> <p>two</p> <div id="aggregatedDiv">#</div> <p> three </p> </div>
Если вы хотите добавить выбранный элемент к другому элементу, используйте Нижний пример:
$("#aggregatedDiv").prevAll().addBack().appendTo("#divTwo");
#divTwo {color: red;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="divOne"> <p>one</p> <p>two</p> <div id="aggregatedDiv">#</div> <p> three </p> </div> <div id="divTwo"></div>