1

我想减少 div 的高度并使用 jquery-ui-draggable 使其可拖动。这就是我在 JS 中所做的

 $(".sortable").sortable({
      revert: true,
      start : function (){
        $(".qhide").css("height","60px");
        $(".qhide").css("overflow","hidden");
      },
      stop : function(){
        $(".qhide").css("height","");   
        $(".qhide").css("overflow","none");
      }
    });

我的html是这样的

<div class="sortable">
    <div class="row">
     Some content here
        <div class="qhide">some more content here</div>
    </div>
</div>

问题在于,尽管视图中的高度降低了,但拖动的高度是 div 的原始高度(这意味着我必须将 div 拖到页面下方以使其在压缩结构)。有什么办法可以改变这个吗?

4

1 回答 1

0

试试这个方法

我对这个JSFiddle中的可排序对象进行了一些修改,以便您可以查看和测试您可以做的一些不同的事情。

但您正在寻找的具体代码如下:

HTML

start: function () {
    $('.qhide').addClass('collapse');
},
stop: function () {
    $('.qhide').removeClass('collapse');
}

CSS

.collapse {
    height:30px;
    overflow:hidden;
}

此解决方案将更有效,因为浏览器只需.qhide在启动和停止时查找元素一次,而不是两次。

这是经过测试并在小提琴中工作的,如果您仍然遇到问题,请告诉我可能还有另一个问题。

于 2013-08-12T13:21:47.333 回答