2016-12-16 41 views
0

我有一個jQuery Web應用程序,它包含一個縮略圖圖像列表。圖像看上去像如何將文件從一個應用程序拖放到另一個應用程序在JavaScript或jquery

<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>

當我試圖從我的應用程序拖到這個錨標記,以我的本地系統(Desktop或任何其他目錄),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事件。因爲在LOB應用程序中,drop事件期望文件爲event.dataTransfer.files。

請讓我知道我們如何在dragstart事件上傳輸文件?

感謝

回答

0

您可以嘗試: -

$(document).on('dragover', function(e) { 
    e.preventDefault(); 
}); 
$(document).on('drop', function(e) { 
    e.preventDefault(); 
    e.originalEvent.dataTransfer.items[0].getAsString(function(url){ 
     alert(url); 
    }); 
});​ 

GET 「http://static3.flattr.net/thing/image/9/4/5/5/0/huge.png?1326712342」 當我拖着從另一個瀏覽器窗口的形象。

.getAsString採用了回調,其獲取URL作爲參數,一旦它被稱爲

在Firefox

不工作
相關問題