2013-07-17 9 views
12

Ho cercato di utilizzare Javascript Drag and Drop API.evento ondragstart con jQuery

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

che funziona e tutto, ma non v'è alcun modo per utilizzare jQuery "on" per catturare l'evento? Ho provato

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

Ma non funziona.

Se possibile, non voglio usare il plugin draggable jQuery, dato che non sto cercando una soluzione cross-browser.

Grazie

+2

'evt.originalEvent.dataTransfer' –

+0

grazie! Puoi aggiungere una risposta in modo da poter contrassegnare la tua come corretta? – Henson

risposta

20

è necessario utilizzare la proprietà originalEvent dell'evento jquery per accedere alle proprietà native di chi ascolta javascript, in questo modo:

evt.originalEvent.dataTransfer