如何在draggable和droppable中的相对父级中选择类元素

时间:2016-09-01 17:22:45

标签: javascript jquery

我有一个看起来像这样的DOM:

<div class="wrapper">
    <div class="droppable"/>
    <div class="items-wrapper"/>

    <div class="droppable"/>
    <div class="items-wrapper">
        <div class="draggable">
        <div class="draggable">
    </div>
    <div class="droppable"/>
</div>

<div class="wrapper">
    <div class="droppable"/>
    <div class="items-wrapper"/>

    <div class="droppable"/>
    <div class="items-wrapper">
        <div class="draggable">
        <div class="draggable">
    </div>
    <div class="droppable"/>
</div>

在我使用JQuery的javascript中,我想设置&#34;接受&#34;每个droppable的选择器,以获取父&#34;包装器中的所有可拖动项目&#34;但似乎在droppable选项中我无法访问$(this)使得以下内容无效。

$('.droppable').droppable({
    accept: "$(this).closest('.wrapper').find('.file_item')",
});

我有点新手,所以感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

droppable accept选项可以是选择器或函数()。在你的情况下使用函数。

 accept: function(ele) { 
    ele.closest('.wrapper').find('.file_item');
 }

链接到documentaion

如果应该接受draggable,函数也必须返回true。