Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQueryUI,在悬停状态下检测真实的可拖放区域_Jquery_Jquery Ui_Drag And Drop_Jquery Ui Draggable_Jquery Ui Droppable - Fatal编程技术网

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
),
现在的问题是:


  • 如何通过当前选项再次调用新附加元素的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:嵌套Dropable
    over
    事件未为内部Dropable的祖先触发接受drop执行以下步骤:(1)-单击并将“drag me”按钮拖到内部Dropable上(2)-释放并将其放下(3)-注意,当前可拖放的边框颜色在
    事件(4)上更改-现在!再次单击并拖动按钮到上一个可拖放的可接受拖放(5)-看不到受影响的边界上的任何更改。这将是一个艰难的过程。考虑<>代码> 是如何工作的。可以尝试切换到
    拖动
    ,但您需要收集所有
    。拖放
    元素,并检查要拖动的项目是否在“上方”或元素边界内。我想知道
    z-index
    是否有助于确定正确的目标。这很好,但我认为问题在于,对于贪婪
    droppable
    事件中的
    drop
    内部可拖放接受拖放,没有触发
    out
    ,这可能是一个错误,而不是通过z-index解决的。无论如何,谢谢你的提示。@Tarcisiofl你有什么问题吗?不确定您需要什么类型的帮助。