gpt4 book ai didi

jQuery ui 多选拖动

转载 作者:行者123 更新时间:2023-12-03 22:33:51 24 4
gpt4 key购买 nike

我需要以下功能

  1. 通过鼠标拖动和 cntrl 键从列表中选择项目,类似于 jquery ui 可选择项。
  2. 一次应该可以拖动多个项目。

我需要类似于操作系统拖放功能的应用程序。

我的问题是,如果我想选择鼠标指针项目正在拖动的多个项目,如何解决它。

我尝试使用该代码,但它在选择多个项目时存在一些缺陷。

$(document).ready(function(){

var selectedClass = 'ui-state-highlight',
clickDelay = 600, // click time (milliseconds)
lastClick, diffClick; // timestamps

$("#draggable li")
// Script to deferentiate a click from a mousedown for drag event
.bind('mousedown mouseup', function(e){
if (e.type=="mousedown") {
lastClick = e.timeStamp; // get mousedown time
} else {
diffClick = e.timeStamp - lastClick;
if ( diffClick < clickDelay ) {
// add selected class to group draggable objects
$(this).toggleClass(selectedClass);
}
}
})
.draggable({
revertDuration: 10, // grouped items animate separately, so leave this number low
containment: '.demo',
start: function(e, ui) {
ui.helper.addClass(selectedClass);
},
stop: function(e, ui) {
// reset group positions
$('.' + selectedClass).css({ top:0, left:0 });
},
drag: function(e, ui) {
// set selected group position to main dragged object
// this works because the position is relative to the starting position
$('.' + selectedClass).css({
top : ui.position.top,
left: ui.position.left
});
}
});

$("#droppable, #draggable")
.sortable()
.droppable({
drop: function(e, ui) {
$('.' + selectedClass)
.appendTo($(this))
.add(ui.draggable) // ui.draggable is appended by the script, so add it after
.removeClass(selectedClass)
.css({ top:0, left:0 });
}
});

});

最佳答案

这是多选拖动的演示

Demo

只需使用可选插件即可选择多个项目

$(".itemlist").selectable({filter:"li"});

关于jQuery ui 多选拖动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11294237/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com