javascript - 德拉古拉掉落到同一类别的不同目标

标签 javascript jquery html dragula

我需要创建一个功能,其中 #sourceItems 中包含很少的可拖动对象,它们应该放置在目标容器 .my-container 之一中,它们具有相同的类型(类、设计、内容) 。

给出以下内容

<div id='sourceItems'>
    <div class='make-it-nice-with-border'>Item One</div>
    <div class='make-it-nice-with-border'>Item Two</div>
    <div class='make-it-nice-with-border'>Item Three</div>
</div>

<div id='destination'>
   <div class='my-container'>
        <span>Some description 1</span>
   </div>
   <div class='my-container'>
        <span>Some description 2</span>
   </div>
   <div class='my-container'>
        <span>Some description 3</span>
   </div>
   <div class='my-container'>
        <span>Some description 4</span>
   </div>
</div>

和 JavaScript 初始化

dragula([document.querySelector('#sourceItems'), 
         document.querySelector('#destination')], 
        {
                revertOnSpill: true 
        });

我能够将对象放入 #destination 容器中,但它们会作为元素“my-container”的同级元素附加。我想要的是该对象应该附加到元素“my-container”内。

我尝试将其更改为,但根本不起作用。

  dragula([document.querySelector('#sourceItems'), 
             document.querySelector('.my-container')], 
            {
                    revertOnSpill: true 
            });

有人知道我错过了什么吗?

谢谢

最佳答案

问题是 document.querySelector 仅返回单个元素。您需要使用 querySelectorAll 并将其转换为数组,然后与 #sourceItems 查询连接。

dragula(
    [ document.querySelector( '#sourceItems' ) ].concat(
        Array.from( document.querySelectorAll('.my-container') )
    ), {
        revertOnSpill: true 
    });

Fiddle

关于javascript - 德拉古拉掉落到同一类别的不同目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51883399/

相关文章:

javascript - 在连接四板上放置 token 动画

javascript - mouseenter 和 append 效果不佳

html -::before 到底做了什么?

html - 在移动设备上的折叠底栏内对齐元素

javascript - 像在 php 中回显一样用 JS 插入代码

javascript - 在 Javascript 中更改没有 ID 的特定元素的 CSS

javascript - ?来自反向地理编码响应的标记

javascript - Jquery Waypoints .sticky 方法

javascript - Jquery - 如何获取选中的复选框的jquery对象

html - 背景图像 : always cover whole page