如何使用setDragImage获得正确的X和Y坐标

How to get correct X and Y co-ordinates to pass with setDragImage.

本文关键字:坐标 何使用 setDragImage      更新时间:2023-09-26

我有一个任务要将元素定位在其放置位置。此定位必须准确。同时,如果我在拖动时使用setDragImage设置重影图像,我无法根据重影图像将鼠标放在正确的位置。Mozila支持addElement,它不需要通过任何X和Y坐标,因此工作非常完美。我也想在其他浏览器中使用类似的东西。

我的代码是。。。。

if (ev.dataTransfer.addElement) {
            ev.dataTransfer.addElement(dragStartImg.get(0));
    } else {
        ev.dataTransfer.setDragImage(dragStartImg.get(0), parseInt($(ev.target).css('left')) + ev.layerX, parseInt($(ev.target).css('top')) + ev.layerY);
    }

请建议我在setDrag Image中为X和Y选项传递什么,使其准确无误。

我使用HTML5拖放和javascript

我不得不在我的一个项目中使用同样的东西。当我释放(放下)元素并隐藏它时,我会缩短事件。在适当的位置,我会在的正确位置上弹出一个新元素

    $('.droppable').droppable({
        accept: ".whatever",
        hoverClass: "highlight",
        activeClass: "ui-state-highlight",
        drop: function (event, ui) {
            //here you can replace the element with a new one in the correct position
        }
    });

希望这能有所帮助。