Как создать выпадающий список подменю с помощью semantic-ui?
В руководстве говорится, что это невозможно сделать с помощью стандартного метода: http://semantic-ui.com/modules/dropdown.html
Однако кому-нибудь удалось это сделать?
В тот момент, когда вы делаете прокручиваемый выпадающий список подменю, треугольник, который указывает на кнопку выпадающего меню, исчезает, когда переполнение изменяется с видимого на автоматический.
Из этого:
Идет к этому:
Есть идеи?
1 ответ
Если структура говорит, что вы не можете сделать это, вы не можете сделать это. Тем не менее, всегда есть обходные пути.
Примечание: следующий фрагмент не будет работать, когда вы нажмете кнопку, потому что переполнение стека не дает достаточной высоты в демонстрации для отображения всплывающего окна. Перейдите к jsfiddle выше, чтобы увидеть, как это работает.
$('.ui.dropdown').popup({
popup: $('.ui.popup'),
on: 'click'
});
$('.ui.menu .item').on('click', function() {
$('.ui.dropdown').click();
alert(this.innerHTML);
});
.ui.popup.fitted {
padding: 0px;
}
.ui.popup.fitted > .ui.menu {
border: none;
}
.ui.menu.scrolling {
max-height: 20.57142857rem;
overflow-x: hidden;
overflow-y: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="http://cdnjs.cloudflare.com/ajax/libs/semantic-ui/1.11.1/semantic.min.css" rel="stylesheet"/>
<script src="http://cdnjs.cloudflare.com/ajax/libs/semantic-ui/1.11.1/semantic.min.js"></script>
<div class="ui floating primary labeled icon top right pointing dropdown button">
<i class="add user icon"></i>
<span class="text">1</span>
</div>
<div class="ui fitted popup">
<div class="ui vertical scrolling menu">
<a class="item">Choice 1</a>
<a class="item">Choice 2</a>
<a class="item">Choice 3</a>
<a class="item">Choice 4</a>
<a class="item">Choice 5</a>
<a class="item">Choice 6</a>
<a class="item">Choice 7</a>
<a class="item">Choice 8</a>
<a class="item">Choice 9</a>
<a class="item">Choice 10</a>
<a class="item">Choice 11</a>
<a class="item">Choice 12</a>
<a class="item">Choice 13</a>
<a class="item">Choice 14</a>
<a class="item">Choice 15</a>
</div>
</div>