jQueryUI,在悬停状态下检测真实的可拖放区域
我试图在jQueryUI,在悬停状态下检测真实的可拖放区域,jquery,jquery-ui,drag-and-drop,jquery-ui-draggable,jquery-ui-droppable,Jquery,Jquery Ui,Drag And Drop,Jquery Ui Draggable,Jquery Ui Droppable,我试图在droppable事件上构建一个嵌套droppable位置,我添加了一个自定义HTML对象,它可能是一个droppable(这里总是droppable), 现在的问题是: 如何通过当前选项再次调用新附加元素的droppable? 我想在上面检测真正的可下降区域,我的方法正确吗?还是有更好的方法?(关于 可下拉列表(可嵌套) 这是一个例子:这是我在评论中提到的一个更好的例子: JavaScript $(function() { function makeDrop(target)
droppable
事件上构建一个嵌套droppable
位置,我添加了一个自定义HTML对象,它可能是一个droppable
(这里总是droppable
),
现在的问题是:
(关于 可下拉列表(可嵌套)
这是一个例子:这是我在评论中提到的一个更好的例子: JavaScript
$(function() {
function makeDrop(target) {
target.droppable({
greedy: true,
tolerance: 'touch',
drop: function(event, ui) {
ui.helper.detach();
var newDrop = $("<div>", {
class: "drop"
}).appendTo($(event.target));
$('.drop').removeClass('drag-hover');
makeDrop(newDrop);
},
over: function(event, ui) {
$('.drop').removeClass('drag-hover');
$(event.target).addClass('drag-hover');
},
});
}
makeDrop($(".drop"));
$('.drag').draggable({
revert: 'true',
helper: "clone",
});
});
$(函数(){
函数makeDrop(目标){
目标可丢弃({
贪婪:没错,
宽容:“触摸”,
drop:函数(事件、用户界面){
helper.detach();
var newDrop=$(“”{
班级:“下降”
}).appendTo($(event.target));
$('.drop').removeClass('drag-hover');
makeDrop(newDrop);
},
结束:功能(事件、用户界面){
$('.drop').removeClass('drag-hover');
$(event.target).addClass('drag-hover');
},
});
}
makeDrop($(“.drop”);
$('.drag').draggable({
回复:“true”,
助手:“克隆”,
});
});
然后,您可以在drop
过程中将dropable分配给动态创建的
至于您的
over
,我怀疑这是目前最好的用法。一旦添加了元素,就可以在其上调用droppable。如果这不是你想要的,请澄清你的问题;但现在我们面临新的挑战,这可能是一个bug:嵌套Dropableover
事件未为内部Dropable的祖先触发接受drop执行以下步骤:(1)-单击并将“drag me”按钮拖到内部Dropable上(2)-释放并将其放下(3)-注意,当前可拖放的边框颜色在事件(4)上更改-现在!再次单击并拖动按钮到上一个可拖放的可接受拖放(5)-看不到受影响的边界上的任何更改。这将是一个艰难的过程。考虑<>代码> 是如何工作的。可以尝试切换到拖动
,但您需要收集所有。拖放
元素,并检查要拖动的项目是否在“上方”或元素边界内。我想知道z-index
是否有助于确定正确的目标。这很好,但我认为问题在于,对于贪婪droppable
事件中的drop
内部可拖放接受拖放,没有触发out
,这可能是一个错误,而不是通过z-index解决的。无论如何,谢谢你的提示。@Tarcisiofl你有什么问题吗?不确定您需要什么类型的帮助。