gpt4 book ai didi

jQuery 在 Over 和 Out 上具有可拖动/可放置行为

转载 作者:行者123 更新时间:2023-12-01 01:34:38 25 4
gpt4 key购买 nike

在这件事上我真的需要你的帮助。我一直很努力地想要做到这一点,但我就是做不到......

jsfiddle:http://jsfiddle.net/5Vyq8/13/

js代码:

$(document).ready(function () {

// Treetable
$("table").treetable({
expandable: true,
initialState: "expanded",
expanderTemplate: "<a href='#'>&nbsp;&nbsp;&nbsp;&nbsp;</a>",
indent: 24,
column: 0
});

// Draggable
$("table .draggable").draggable({
opacity: .75,
refreshPositions: true,
revert: "invalid",
revertDuration: 300,
scroll: true,
delay: 100,
cursor: 'move'
});

//Droppable
$("table tbody tr").each(function () {
$(this).droppable({
accept: ".draggable",
hoverClass: "append-to-task",
over: function (e, ui) {

// add class 'accept-incoming-task' to the row under after 1 second
},
out: function () {

},
drop: function (e, ui) {

var droppedEl = ui.draggable;
// Adds the task as the first child to dropped row
$("table").treetable("move", droppedEl.data("ttId"), $(this).data("ttId"));
},
});
});
});
<小时/>

我想要实现的是:

  1. 将一行拖到另一行(完成!)
  2. 悬停超过 1 秒时,它应该向下面的行添加一个类
  3. 当仍然悬停并移动到其他行时,它应该删除上一步中添加的类

感谢您的时间和帮助。

最佳答案

看看http://jsfiddle.net/snowMonkey/7yEaU/

$("table tbody tr").each(function () {
var that=this;
$(this).droppable({
accept: ".draggable",
over: function (e, ui) {
// add class 'accept-incoming-task' to the row under after 1 second
hoverTimeout = setTimeout(function(){
$(that).addClass("append-to-task");
}, 1000);
},
out: function () {
clearTimeout(hoverTimeout);
$(that).removeClass("append-to-task");
},
drop: function (e, ui) {

var droppedEl = ui.draggable;
// Adds the task as the first child to dropped row
$("table").treetable("move", droppedEl.data("ttId"), $(this).data("ttId"));
},
});
});

我已经完成了你的第二步。您需要做的第一件事是从悬停中删除悬停类,您将在超时延迟后手动拉动它。

其次,在此之外创建一个hoverTimeout var(这样您就可以从hover 和out 回调访问它)。

第三,在over:回调中,将hoverTimeout设置为1000ms,并在触发时添加该类。

最后,在 out 回调中,清除超时并删除该类。

这可以处理第二步和第三步 - 但它不允许您删除并将删除的项目附加到捕手。希望对您有帮助!

关于jQuery 在 Over 和 Out 上具有可拖动/可放置行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17980264/

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