我有一个jQuery Web应用程序,其中包含缩略图映像列表。图像看起来像
<a href="#" draggable="true" id="anchorId" data-downloadurl="application/pdf:filename.pdf:http://www.pdf995.com/samples/pdf.pdf"><img draggable="false" alt="" src="imageSrcPath" title="Drag & Drop"></a>
当我试图将此锚标记从我的应用程序拖到本地系统(桌面或任何其他目录)时,立即复制PDF文件。它的工作正常。
,但是现在我想将锚标签从我的应用程序拖到其他LOB应用程序(Gmail撰写或快速书籍),什么也不会发生。
以下代码用于Dragstart,
document.getElementById("anchorId").addEventListener("dragstart",function(evt) {
document.getElementById("anchorId").setAttribute("href", "http://www.pdf995.com/samples/pdf.pdf");
evt.dataTransfer.effectAllowed = "copy";
},false);
我不知道要在event.datatransfer中传输文件对象。因为在LOB应用程序中,Drop事件期望该文件为event.datatransfer.files。
所以请让我知道如何在DragStart事件上传输文件?
谢谢
您可以尝试: -
$(document).on('dragover', function(e) {
e.preventDefault();
});
$(document).on('drop', function(e) {
e.preventDefault();
e.originalEvent.dataTransfer.items[0].getAsString(function(url){
alert(url);
});
});
获取" http://static3.flattr.net/thing/image/9/4/5/5/5/5/0/huge.png?1326712342"当我从另一个浏览器窗口拖动该图像时。
.getAsstring接听回调,该回调将其称为参数,一旦称为
不适用于Firefox