0

Chromeで動作しますが、Firefoxバージョン16.0.2では動作しません。IEに煩わされることすらありません。デスクトップからFFにファイルをドラッグしてドロップすると、デフォルトのアクション(ファイルを開く)が停止するはずですが、停止しません。明らかに非常に簡単なもので、それが見えないだけです。助けてください。これはクロムでは機能しますが、FFでは機能しません。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<body>
    Why ??
</body>
<script type="text/javascript">

    $(document).bind('drop', docDrop);

    function docDrop(e) {
     e.stopPropagation();
     e.preventDefault();
     return false;
    }

</script>
4

2 に答える 2

0

そうです、それを自分で動作させました。だからここに将来のグーグルのための解決策があります:

「drop」イベントを機能させるには、Firefoxでも「dragover」イベントを定義する必要があります。したがって、機能するコードは次のとおりです。

$(document).bind('dragover', function(e){
    e.preventDefault();
    return false;
});
$(document).bind('drop', function(e){
    e.preventDefault();
    return false;
});

また、このテーマに関する別のトピック: 「drop」イベントの後にリダイレクトを停止する方法は?

于 2012-12-06T08:49:21.980 に答える
0

試してみてくださいe.stopImmediatePropagation()。それが伝播を停止する場合、それはあなたがdropイベントを複数回バインドしたことを意味します。unbindイベントが完了する前または後に検討することをお勧めします。

于 2012-12-05T15:56:16.420 に答える