2013-07-17 62 views
12

我一直在嘗試使用JavaScript拖放API。與jQuery ondragstart事件

var file = document.getElementById('file'); 
file.addEventListener('dragstart', function(evt){ 
    evt.dataTransfer.setData("DownloadURL",fileDetails); 
}, false); 

這有效,所有,但有沒有什麼辦法可以使用jQuery「on」來捕捉事件?我試過

$('#file').on('dragstart', function(evt) { 
    console.log(evt.dataTransfer);     // this returns undefined 
    evt.dataTransfer.data("DownloadURL",fileDetails); // so this produces error 
}); 

但它不起作用。

如果可能的話,我不想使用jQuery可拖動插件,因爲我真的不想有跨瀏覽器的解決方案。

感謝

+2

'evt.originalEvent.dataTransfer' –

+0

的感謝!你能添加一個答案,以便我可以將你的標記標記爲正確的答案嗎? – Henson

回答

20

你必須使用屬性jquery的事件originalEvent來訪問JavaScript監聽本機屬性,如:

evt.originalEvent.dataTransfer