0

他の要素をドロップするために JQuery ドロップ可能コンテナーを使用しています。ユーザーのマウスがコンテナー上にあるときに追加される hoverClass。このクラスでは、コンテナーの新しい幅を設定します。ただし、この新しい幅は、マウスがコンテナーを離れたときに考慮されません。コンテナーの幅が古いため、Out イベントがトリガーされます。さらに奇妙なのは、ドラッグ要素を非常にゆっくり動かすと、コンテナの新しい幅が考慮されることです。

ここでフィドルの例を作成しました: http://jsfiddle.net/SLGdE/709/

Chrome と FF でテスト済み。

ドロップ可能なコンテナの新しい幅が考慮されるようにするにはどうすればよいですか?

$(function() {
    $("#draggable").draggable({
      revert:true
    });

    $("#droppable").droppable({
        tolerance: "pointer",
        hoverClass: "over"
    });
});
4

3 に答える 3

0

クラスを追加してカスタマイズする必要があります。jQueryUiドキュメントから:

$( "#droppable" ).droppable({
  drop: function( event, ui ) {
    $( this )
      .addClass( "ui-state-highlight" )
  }
});
于 2014-05-05T09:57:14.713 に答える
0

refreshPositionsあなたのに価値を追加しtrueますdraggable。ただし、https://api.jqueryui.com/draggable/#option-refreshPositionsごとにパフォーマンスが低下することに注意してください。したがって、回避策がより良いオプションである可能性がありますが、この回答は他の人に役立つ可能性があります.

$( "#draggable" ).draggable({
    revert:true, 
    refreshPositions: true
});
于 2015-04-24T16:46:53.613 に答える