javascript - 如何跟踪 jQuery 拖放功能

标签 javascript jquery html twitter-bootstrap jquery-ui

我使用 bootstrap 和 jQuery UI 为我的列表创建拖放功能。

我的 HTML 是:

<ul class="draggablePanelList list-unstyled">
    <li class="panel panel-info">
        <div class="panel-heading">You can drag this panel.</div>
        <div class="panel-body">Content ...</div>
    </li>
    <li class="panel panel-info">
        <div class="panel-heading">You can drag this panel too.</div>
        <div class="panel-body">Content ...</div>
    </li>
</ul>

我的脚本使拖放功能起作用:

jQuery(function($) {
    var panelList = $('.draggablePanelList');

    panelList.sortable({
        // Only make the .panel-heading child elements support dragging.
        // Omit this to make then entire <li>...</li> draggable.
        update: function() {
            $('.panel', panelList).each(function(index, elem) {
                 var $listItem = $(elem),
                     newIndex = $listItem.index();

                 // Persist the new indices.
            });
        }
    });
});

我想添加 javascript,指示哪个项目被拖放以及它现在在列表中的位置(使用元素属性进行跟踪)。我怎样才能做到这一点。

谢谢

最佳答案

UI 中有可拖动和可调整大小的功能。完成调整大小后,我使用以下方法来处理事件:

.resizable('stop' : function(){ doSomething.call(this); }.bind(this))

您可以将相同的绑定(bind)包含到拖放 UI 功能中。您可能需要添加一个监听器来获取列表项的目标。

编辑:这是 draggable功能:

.draggable({ 'stack'       : '.classContainer', 
             'handle'      : '.classThatHandlesDrag', 
             'containment' : '#divThatLimitsTheDrag' })

关于javascript - 如何跟踪 jQuery 拖放功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32158645/

相关文章:

javascript - 是否有 xhr.overrideMimeType() 函数的跨浏览器替代方案?

html - 响应文本长度时溢出下划线

java - 如何找到 http 请求的 IP 地址或位置?

c# - 将数据加载到动态填充的部分 View 中的选择下拉菜单

javascript - React.js getTimeUntil 返回 Nan

由 <a> 引起的 javascript:history.back(-1) 问题

html - 有没有办法在 HTML/CSS 中创建一个以月份作为计数器的有序元素列表?

javascript - 如何将多个 HTML 标签作为一个 javascript 变量

javascript - jqGrid 不同组级别的不同汇总

javascript - jQuery 脚本在 IE 中不起作用?