1

我的任务是将元素放置在其放置位置。这个定位必须准确。同时,如果我在拖动时使用 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

4

1 回答 1

1

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

    $('.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
        }
    });

希望这可以帮助。

于 2013-08-06T09:08:42.453 回答