如何确保所有带.px-sub-menu-item
的课程都包含在div中?
(function($) {
$('.px-sub-menu-item').each(function() {
$(this).nextUntil('.px-sub-menu-item').addBack('.px-sub-menu-item').wrapAll('<div class="px-menu-wrap"></div>');
});
})(jQuery);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav>
<a href="#" class="px-main-menu-item">Home</a><br>
<a href="#" class="px-sub-menu-item">Submenu 1</a><br>
<a href="#" class="px-main-menu-item">Home 2</a><br>
<a href="#" class="px-sub-menu-item">Submenu 2</a><br>
<a href="#" class="px-sub-menu-item">Submenu 3</a><br>
<a href="#" class="px-main-menu-item">Home 3</a><br>
</nav>
答案 0 :(得分:1)
wrapAll
将所有选择者包含在一个 div
中。如果您希望将每个.px-sub-menu-item
换行到单独的div中,则需要使用wrap
函数。
$('.px-sub-menu-item').wrap('<div></div>');
&#13;
div > .px-sub-menu-item{
color: red;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav>
<a href="#" class="px-main-menu-item">Home</a><br>
<a href="#" class="px-sub-menu-item">Submenu 1</a><br>
<a href="#" class="px-main-menu-item">Home 2</a><br>
<a href="#" class="px-sub-menu-item">Submenu 2</a><br>
<a href="#" class="px-sub-menu-item">Submenu 3</a><br>
<a href="#" class="px-main-menu-item">Home 3</a><br>
</nav>
&#13;