jquery可排序的占位符高度问题

osh*_*nen 91 jquery jquery-ui jquery-ui-sortable

由于某种原因,我的可排序项目的占位符大约是10px.我所有的可排序项目都有不同的高度.如何更改每个占位符的高度以匹配要移动的项目?

mek*_*all 241

我通常通过绑定一个回调来解决这个问题,该回调将占位符的高度设置为要排序到start事件的项目的高度.这是一个简单的解决方案,可以让您精确控制占位符的显示方式.

$( ".column" ).sortable({
    connectWith: ".column",
    start: function(e, ui){
        ui.placeholder.height(ui.item.height());
    }
});
Run Code Online (Sandbox Code Playgroud)

查看 更新的测试用例

  • 我个人不得不用ui.helper.outerHeight()代替ui.item.height(),原因是边距和填充偏斜了元素的实际高度 (20认同)

Dar*_*JDG 15

你试过设置forcePlaceholderSize:true房产吗?阅读jQuery UI Sortable 文档页面.

  • 我已经尝试过,但添加true或false对我的原始网站没有任何影响,使其保持在10px高.在这个jsfiddle中,它正确调整大小,但forceplaceholdersize设置为true或false没有区别.http://jsfiddle.net/t8gcZ/ (2认同)
  • 这对我有用.我所要做的就是更改CSS` .ui-sortable-placeholder {border:1px dotted black; 能见度:可见!重要; 身高:50px!重要; }`到`.ui-sortable-placeholder {border:1px点缀黑色; 能见度:可见!重要; }(所以删除高度)所以@DarthJDG你是对的! (2认同)