我有多个可排序的,它们可以相互重叠。Sortables 相互连接并允许将一个元素拖动到另一个元素。还有其他项目,可以拖到这些分类中。
当一个占位符完全超过另一个占位符时,我遇到了一个棘手的部分。这阻止了我将一个元素从外部容器放到内部容器中。我扩展了可排序小部件并进行了一些修改以检查 z-indexes 而不是包含。
if (innermostContainer && $.contains(this.containers[i].element[0],innermostContainer.element[0])){
变成:
if (innermostContainer && parseInt(this.containers[i].element.css('zIndex')) < parseInt(innermostContainer.element.css('zIndex'))){
它适用于这个问题。
下一个问题是,如果我将一个项目从可拖动项拖放到内部容器中,则会出现 2 个占位符并尝试将它们都添加错误。
(如果我之前的 z-index 修复未应用,则拖动的项目添加到内部容器以及另一个容器中)所以主要是我的修复将外部容器项放入内部容器。
这两种效果都对我不利,但我想通过仅添加一个占位符和一项来解决此问题。
你有什么解决办法我该怎么办?
我创建了一个示例来向您展示问题:http: //jsbin.com/irigas/1/edit