首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在拖放时禁用拖放

在拖放时禁用拖放
EN

Stack Overflow用户
提问于 2016-04-23 10:08:57
回答 1查看 78关注 0票数 0

我正在使用互作库,并具有以下可拖动的框和下拉区域:

代码语言:javascript
复制
<div id="obj" class="draggable drag-drop"> Grass </div>
<div id="obj" class="draggable drag-drop"> Tree </div>
<div id="act" class="draggable drag-drop"> Fire </div>
<div id="act" class="draggable drag-drop"> Collapsed </div>
<div id="env" class="draggable drag-drop"> Forest </div>
<div id="env" class="draggable drag-drop"> Urban </div>


<div id="dropzone" class="dropzone">dropzonecategory</div>

我正在努力实现这样的情况,当一个盒子被拖到空投区时。Grass,所有带有id obj和act的拖放对象都是灰色的和禁用的(不可拖的);允许用户只从id env可拖的可拖文件中进行选择。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-23 10:36:12

使用配置{accept:‘..yes drop’}在联合ondropactivate函数中从其他类中删除该类-

代码语言:javascript
复制
<div id="obj" class="can-drop draggable drag-drop"> Grass </div>
<div id="obj" class="can-drop draggable drag-drop"> Tree </div>
<div id="act" class="can-drop draggable drag-drop"> Fire </div>
<div id="act" class="can-drop draggable drag-drop"> Collapsed </div>
<div id="env" class="can-drop draggable drag-drop"> Forest </div>
<div id="env" class="can-drop draggable drag-drop"> Urban </div>

..。

代码语言:javascript
复制
interact('.dropzone').dropzone({
   accept: '.can-drop'
}

..。

代码语言:javascript
复制
ondropactivate: function (event) {
    var others = document.querySelectorAll('div:not([#' + event.relatedTarget.id + ']')
    //foreach over these and remove their .can-drop classes
    [].forEach.call(others , function(div) {
      div.classList.remove("can-drop");
    });
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36809387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档