Сортируемый пользовательский интерфейс jQuery: перетаскиваемый элемент исчезает - PullRequest
18 голосов
/ 18 декабря 2010

Я установил <div class="container"> .sortable(), и в контейнере есть некоторые элементы.

Когда я перетаскиваю внутренний элемент, намереваюсь отсортировать элемент с остальными, как только перетаскиваю один из контейнера, его не видно .

Но когда я уронил его на место, его снова можно было увидеть. Онлайн дело здесь .

Кто-нибудь сталкивался с проблемой раньше? Или кто-нибудь может помочь мне с проблемой?

Спасибо

Ответы [ 4 ]

14 голосов
/ 18 декабря 2010

Бросьте overflow: hidden; на .container, и оно будет работать. Проблема в том, что во время перетаскивания вы перемещаете дочерний элемент .container за пределы элемента .container, вы сказали браузеру скрыть любое переполнение, когда вы принудительно переполняете во время перетаскивания, и браузер делает это. что ты сказал это делать.

Общий совет: оставьте overflow в покое, если вы не знаете, что он делает и почему вам нужно его использовать.

9 голосов
/ 08 мая 2012

Хитрость заключается в том, чтобы установить помощнику значение 'clone' и использовать временный список подкачки для перетаскивания .. измененная версия вашего кода здесь

$( ".selector" ).sortable({
    helper: "clone"
});
2 голосов
/ 08 августа 2013

Мои перетаскиваемые элементы исчезали в вертикальном списке, и я обнаружил, что использование overflow-y: скрытый вместо переполнения: скрытый работал для меня. т.е. только нацелены на ось Y.

2 голосов
/ 18 декабря 2010

Скорее всего, проблема в следующем: .container{ margin:0 20px; position:absolute;top:0;height:100%;width:280px;overflow:hidden;}.

Если вы установите overflow:auto, он отображает div оболочки с полосой прокрутки, и вы можете просматривать свой портлет.

...