Por algum motivo, o espaço reservado para meus itens classificáveis é de cerca de 10 px. Todos os meus itens classificáveis têm alturas diferentes. Como posso alterar a altura de cada espaço reservado para corresponder ao item que está sendo movido?
jquery
jquery-ui
jquery-ui-sortable
Oshirowanen
fonte
fonte
Respostas:
Normalmente resolvo isso vinculando um retorno de chamada que define a altura do espaço reservado para a altura do item que está sendo classificado para o
start
evento. É uma solução simples que oferece controle refinado sobre como deseja que o marcador de posição seja exibido.Veja o caso de teste atualizado
fonte
Você já tentou definir a
forcePlaceholderSize:true
propriedade? Leia a página de documentação do jQuery UI Sortable .fonte
.ui-sortable-placeholder { border: 1px dotted black; visibility: visible !important; height: 50px !important; }
para.ui-sortable-placeholder { border: 1px dotted black; visibility: visible !important; }
(então remova a altura) Então @DarthJDG você está certo!São seus elementos
display: block
? Elementos embutidos podem fazer com que o marcador de posição não mantenha a altura correta. Por exemplo. este jsFiddle parece ter um problema semelhante ao que você descreveu. Adicionardisplay: block
à.portlet
classe corrige isso.fonte
Em vez de usar "ui.item.height ()", você pode usar "ui.helper [0] .scrollHeight" para estabilizar o resultado ao arrastar um item de um contêiner externo também.
fonte
Você pode definir um estilo para o seu espaço reservado como uma opção para sua classificação.
E apenas dê a esse estilo uma altura. Espero que funcione.
fonte
No meu caso, encontrei uma solução semelhante ao JP Hellemons , em que estou forçando a altura do espaço reservado (com ! Importante ) para customizar e também configurando a visibilidade com o fundo para ver as alterações por mim mesmo (também você pode estilizar o seu espaço reservado da maneira que quiser )
Isso também funciona com
display: inline-block;
fonte