jquery - 使用 jquery ui droppable 和 elementFromPoint 获取放置元素下方的元素

标签 jquery html css jquery-ui

我在 IE 11 上,我使用 jquery ui droppable/draggable。

当我放下一个元素时,我想得到被放下的元素下面的元素。

我现在得到的 targetElement 是我放下的元素......

为什么?

我到处都读到在 drop 事件中我得到了被放置元素下面的元素,但是我得到了被放置的元素......

    $("#container").droppable({
        accept: ".droppableElements",
        activeClass: "ui-state-hover",
        hoverClass: "ui-state-active",
        drop: function (event, ui) {


var targetElement = document.elementFromPoint(event.clientX, event.clientY);
ui.draggable.detach().insertBefore(targetElement );

        }
    });

最佳答案

我找到了一个“似乎”的解决方案,方法是将可放置容器上当前元素的所有 z-index 设置为 z-index: 10000 + 我这样我就得到了下面的元素!

从下面的元素开始 - 因为它由多个 div 组成 - 我这样做是为了获得具有特定类的父元素:

var parent = $(targetElementBeneathDroppedElement).closest('.refOptionItem')[0];

我很高兴! :-)

关于jquery - 使用 jquery ui droppable 和 elementFromPoint 获取放置元素下方的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28147020/

相关文章:

javascript - 如何将 javascript 从父级加载到子级上下文中

html - 可变宽度的固定侧边栏旁边的流动内容

jQuery 重新加载 DOM?

javascript - 难以通过 JQuery 删除 Div 元素

asp.net-mvc-3 - 如何在 ASP.Net MVC 3 razor View 中使用 Ajax 和 Jquery 加载页面部分?

Python 循环和网页抓取 |美汤

html - 如果可能,我如何使用 selenium 来识别嵌套框架中的元素?

javascript - 样式表的 Angular 路由提供者

CSS - 响应式 - 在调整浏览器宽度时裁剪背景图像的左右部分

javascript - 如何在 Javascript 中设置多个属性