带有jQuery的ondragstart事件

带有jQuery的ondragstart事件,jquery,Jquery,我一直在尝试使用Javascript拖放API var file = document.getElementById('file'); file.addEventListener('dragstart', function(evt){ evt.dataTransfer.setData("DownloadURL",fileDetails); }, false); 这是可行的,但是有没有办法使用jQuery“on”来捕获事件?我试过了 $('#file').on('dragstart', fu

我一直在尝试使用Javascript拖放API

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
});
但它不起作用

如果可能的话,我不想使用jquerydraggable插件,因为我并不真正希望有一个跨浏览器的解决方案


谢谢

您必须使用jquery事件的属性
originalEvent
来访问javascript侦听器的本机属性,如下所示:

evt.originalEvent.dataTransfer

evt.originalEvent.dataTransfer
谢谢!你能添加一个答案,这样我就可以将你的答案标记为正确的答案吗?如果你能提供正确的代码示例,以明确你的答案在OPs问题中的使用方式,那就更好了。
$('#file').on('dragstart', function(evt) {
   console.log(evt.originalEvent.dataTransfer);                    
   evt.originalEvent.dataTransfer.data("DownloadURL",fileDetails); 
});