我有一个看起来像这样的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中,我想设置每个droppable的“ accept”选择器,以获取父级“ wrapper”中的所有可拖动项,但似乎在droppable选项中,我无法访问$(this),从而使以下内容无效。

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


我是个新手,因此可以提供任何帮助。

最佳答案

droppable accept选项可以是选择器或function()。在您的情况下使用功能。

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


链接到documentaion

如果应接受可拖动对象,则该函数还必须返回true。

关于javascript - 如何在可拖动和可放置的相对父级中选择类元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39277500/

10-12 20:00