Javascript HTML5拖放;使用jQuery进行Drop事件处理

Javascript HTML5拖放;使用jQuery进行Drop事件处理,javascript,jquery,html,oledragdrop,Javascript,Jquery,Html,Oledragdrop,所以我多次偶然发现这个问题,现在我终于厌倦了这个话题。每次搜索和谷歌搜索都让我感到困惑,现在我需要在这里自己问一下 我准备在web应用程序中实现原生HTML5拖放。它在Chrome和IE中也能很好地工作(至少在我上次尝试时是这样) 现在的问题是,通过jQuery进行的事件绑定在Firefox中无法正常工作,而在Chrome中却是如此!这是我的代码: $(document).on('dragstart','.leistung', function(){ cedamed.handlers.d

所以我多次偶然发现这个问题,现在我终于厌倦了这个话题。每次搜索和谷歌搜索都让我感到困惑,现在我需要在这里自己问一下

我准备在web应用程序中实现原生HTML5拖放。它在Chrome和IE中也能很好地工作(至少在我上次尝试时是这样)

现在的问题是,通过jQuery进行的事件绑定在Firefox中无法正常工作,而在Chrome中却是如此!这是我的代码:

$(document).on('dragstart','.leistung', function(){
    cedamed.handlers.dragElement(event);
});
这是我的处理程序:

this.dragElement = function(event){
    var dataObj = {}; 
    dataObj.category = event.target.getAttribute('class');
    dataObj.description = event.target.getAttribute('description');
    dataObj.code0 = event.target.getAttribute('code0');
    dataObj.code1 = event.target.getAttribute('code1');
    dataObj.code2 = event.target.getAttribute('code2');
    event.dataTransfer.setData('Text',JSON.stringify(dataObj));
    console.log("dragging");
};
在Chrome中工作,Firefox给了我以下错误:

ReferenceError: event is not defined
它指向具有以下内容的线:

cedamed.handlers.dragElement(event);
我遇到过一些涉及事件api的originalEvent属性的“解决方案”,人们通常认为这些解决方案可以使FF中的一切工作正常,但在我的例子中,它们根本不起作用。我通过直接在HTML中设置“ondragstart”属性使其工作,但它不应该与“jQuery.on”一起工作吗


很抱歉,这个话题有几个问题,但我不知道这个领域出了什么问题。你能不能告诉我,这里出了什么问题

我发现我必须将'event'作为参数传递给'on'中的jQuery回调函数,例如:

$(document).on('dragstart','.leistung', function(event){
   cedamed.handlers.dragElement(event);
});
通过在“Dragelement”中使用OriginaleEvent,我终于让它工作了。对不起