【问题标题】:jqueryui sortable before start eventjqueryui 在开始事件之前可排序
【发布时间】:2017-04-02 16:13:24
【问题描述】:

我尝试在可排序的开始事件之前附加一些数据。这是我的例子

<ul id="sortable">
    <li class="ui-state-default">Item 1</li>
    <li class="ui-state-default">Item 2</li>
    <li class="ui-state-default">Item 3</li>
    <li class="ui-state-default">Item 4</li>
    <li class="ui-state-default">Item 5</li>
</ul>

js代码

$( "#sortable" ).sortable({
            revert: true,
      forcePlaceholderSize: true,
      placeholder: "ui-state-highlight",
      start: function( event, ui ) {
        $(ui.item).append("<div>abc<br><br>abc</div>");
      }
        });

当我拖动第 1 项时,它看起来像

但我想在开始调整占位符大小之前附加数据。但也许 jquery ui 没有那个事件。 j我该怎么做谢谢。

Here 是我的例子。

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-ui-sortable


    【解决方案1】:

    首先,您必须重置列表元素的高度,然后您必须将其新高度应用于占位符元素。代码:

    $(function() {
      $('#sortable').sortable({
        revert: true,
        forcePlaceholderSize: true,
        placeholder: 'ui-state-highlight',
        start: function(event, ui) {
          // we don’t want jQuery’s 20px
          ui.item.height('auto');
          ui.item.append('<div>abc<br><br>abc</div>');
          // now set the new height to the placeholder
          $(ui.placeholder[0]).height(ui.item.height());
        }
      });
    });
    

    【讨论】:

    • 是的,它看起来很漂亮。谢谢 :)
    猜你喜欢
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    • 2014-12-20
    • 2015-05-21
    • 1970-01-01
    相关资源
    最近更新 更多