0
構造や属性を変更できない複数の行があります。しかし、これらの行に子要素(.start
& .end
)を追加できます。2つの親要素の間にすべての要素をラップします
したがって、.start
子要素を持つ行の後のすべての要素を、次の行に.end
子要素があるまでラップしたいとします。私はこれを達成するためにループeach
を作成しました。しかし問題は、私のラップのクローズド・ディビジョンが深すぎるということです。
次のスニペットで見ることができるように、境界線が.start
要素の後の周りのすべての要素を行くが、それは唯一の行3の周りにする必要があり、4と9
$('.row .start').closest('.row').each(function (index) {
$(this).nextUntil(".row .end").wrapAll("<div class='box'/>");
});
.box{
border: 1px solid red;
background-color:pink;
padding: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row">
<div class="element">1</div>
</div>
<div class="row">
<div class="element">
<div class="start">start</div>
</div>
</div>
<div class="row">
<div class="element">3</div>
</div>
<div class="row">
<div class="element">4</div>
</div>
<div class="row">
<div class="element">
<div class="end">end</div>
</div>
</div>
<div class="row">
<div class="element">6</div>
</div>
<div class="row">
<div class="element">7</div>
</div>
<div class="row">
<div class="element">
<div class="start">start</div>
</div>
</div>
<div class="row">
<div class="element">9</div>
</div>
<div class="row">
<div class="element">
<div class="end">end</div>
</div>
</div>
バム、とても簡単です。 ;-) ありがとう。 – emjay