Как я могу перетащить элемент в выпадающий список, используя jQuery UI sortable ()?

Укороченная версия: Как я могу перетащитьLink 1 в одном из выпадающих подLink 3 в этой демонстрации?http://jsfiddle.net/Gdadu/2/

РЕДАКТИРОВАТЬ: Был поднят вопрос о том, что должно произойти, когда элемент перетаскивается поверх другого: должен ли он быть помещен влево / вправо или начать новое подменю? Для того, чтобы список был полностью сортируемым, должен быть какой-то способ поместить элементы в несуществующие подменю, начиная новыйul падать. Я мог бы вставить пустойul в каждом элементе списка, который еще не был выбран в качестве цели удаления, но проблема выше все еще существует.

Это кажется намного сложнее, чем я думал вначале, поэтому я прошу прощения за то, что еще не приложил больше усилий, поскольку я не рассматривал некоторые из этих проблем. Я готов принять ответ на поставленную проблему и об остальном переживаю позже.

У меня есть базовый выпадающий список навигации, который я хочу полностью отсортировать, используя пользовательский интерфейс jQuery. Любыеli Элемент должен иметь возможность перемещаться в любую позицию во всем списке. У меня проблемы с перетаскиванием элементов списка верхнего уровня в подменю, кажется, что:hover не срабатывает в раскрывающемся списке в режиме «перетаскивания», поэтому раскрывающиеся списки не отображаются.

Пример HTML:

<ul class="dropdown">
    <li><a href="#">Link 1</a></li>
    <li><a href="#">Link 2</a></li>
    <li><a href="#">Link 3</a>
        <ul>
            <li><a href="#">Link</a></li>
            <li><a href="#">Link</a></li>
            <li><a href="#">Link</a>
                 <ul>
                    <li><a href="#">Link</a></li>
                    <li><a href="#">Link</a></li>
                    <li><a href="#">Link</a></li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

Мой CSS:

.dropdown,
.dropdown li,
.dropdown ul {
    list-style:none;
    margin:0;
    padding:0;
}
.dropdown {
    position:relative;
    display:block;
    z-index:10000;
}
.dropdown ul {
    position:absolute;
    top:100%;
    width:100%;
    visibility:hidden;
    display:none;
    z-index:900;
}
.dropdown ul ul {
    top:0;
    left:100%;
}
.dropdown li {
    position:relative;
    float:left;
}
.dropdown li:hover{
    z-index:910;
    cursor:default;
}
.dropdown ul:hover,
.dropdown li:hover > ul,
.dropdown a:hover + ul,
.dropdown a:focus + ul {
    visibility:visible;
    display:block;
}
.dropdown a {
    text-decoration:none;
    display:block;
    padding:.5em 2em;
    background:#cde;
    border:1px solid #ccc;
}
.dropdown ul li {
    width:100%;
}

Сортируемая инициализация:

$('.dropdown').sortable({
    items: 'li'
});

Демо-версия:http://jsfiddle.net/Gdadu/2/

Например, я хочу перетащить «Ссылка 1» в подменю, но не могу этого сделать, потому что при перетаскивании подменю не появляется, как будто:hover игнорируется Я не уверен, заключается ли проблема в CSS или javascript. Что я могу сделать по этому поводу?

Хорошая идея из комментариев:

Возможно, вы могли бы вызвать все, чтобы развернуться, когда начинается перетаскивание

Это, вероятно, сработает, но я не хочу, чтобы все меню расширялось. Это может быть много контента с множеством ссылок и 3 уровнями навигации, и, вероятно, он будет перекрывать все всплывающие окна / выпадающие списки (огромный беспорядок).

Ответы на вопрос(1)

Ваш ответ на вопрос