0

だから私はこれに何度か出くわしましたが、今ではこのトピックにうんざりしています。それについて検索したりググったりすると毎回混乱するので、ここで自分で質問する必要があります。

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-propertyに関係する「解決策」に出くわしました。これは、多くの場合、FFですべてが正常に機能するはずですが、私の場合はまったく機能しません。「ondragstart」属性を HTML に直接設定して動作させましたが、「jQuery.on」では動作しないのでしょうか?

申し訳ありませんが、このトピックにはいくつかの質問がありますが、この分野で何がうまくいかないのかわかりません。ここで何が問題なのか、洞察を教えてください。

4

1 に答える 1