我正在使用带有jQuery UI的bootstrap为我的列表创建拖放功能。
我的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,它指示哪个项目被拖放以及它现在在列表中的位置(使用要跟踪的元素属性)。我怎么能这样做。
由于
答案 0 :(得分:1)
UI中有可拖动和可调整大小的功能。完成大小调整后,我会使用以下内容来处理事件:
.resizable('stop' : function(){ doSomething.call(this); }.bind(this))
您可以在拖放UI功能中包含相同的绑定。您可能必须添加一个侦听器才能获取列表项的目标。
编辑:此处是draggable功能:
.draggable({ 'stack' : '.classContainer',
'handle' : '.classThatHandlesDrag',
'containment' : '#divThatLimitsTheDrag' })