将文件拖放到动态生成的内容中

时间:2014-08-18 15:01:58

标签: javascript jquery drag-and-drop

我正在尝试通过删除其他图像来更改动态生成的占位符图像的src,但我无法从丢弃的图像中获取数据。我尝试了几种方法,但都没有效果。

方法1:

console.log(e.dataTransfer);

返回 undefined

方法2:

console.log(e.originalEvent.dataTransfer.files.length);

不返回任何文件。这是我的探测器的工作样本:JSFiddle。我错过了什么?

更新: 正如@Marcel指出的那样,当用户从计算机中拖动数据时,drop事件会接收数据,但是不会从浏览器中加载的图像中获取任何数据。我的最终目标是让用户从另一个浏览器选项卡或窗口拖动图像,并使用删除的图像的URL更新占位符URL。

1 个答案:

答案 0 :(得分:0)

如果其他人希望获得相同的功能,我可以使用下面的代码位来完成。

var droppedImage = e.originalEvent.dataTransfer.getData('text/html');
var imageURL = $(droppedImage).attr('src');

它适用于同一页面上的图像&从其他浏览器窗口/标签拖动图像。

JSFiddle