Я использую jQuery UI sortable для серии div, и я бы хотел, чтобы класс.button class divs сортировался, если они содержат div с активным классом (т.е. Третья кнопка ниже не будет сортироваться):
<div class="multibuttonset">
<div class="button">
<div class="active">
</div>
</div>
<div class="button">
<div class="active">
</div>
</div>
</div>
<div class="button">
<div class="inactive">
</div>
</div>
</div>
Я знаю, что использование опции items может контролировать, какие элементы сортируются - у меня есть этот код ниже:
$( "div.multibuttonset" ).sortable(
{ items: 'div.active' }
);
Проблема в том, что мои сортируемые элементы - это divs с классом.button, поэтому, когда я использую указанный выше параметр, он создает дочерние элементы с классом. Active sortable, но не родительский (div с классом.button). Есть ли способ разместить выражение ('div.active'). Parent() -type внутри опции {items}.sortable?
Я думаю, что вы ищете : has-selector
$("div.multibuttonset").sortable({
items: '.button:has(.active)'
});
Демо: скрипка