1

ドラッグ可能なアイテムがドロップされたが、ドロップ可能なアイテム内にないときにイベントを処理したい。これまでのところ、これだけしか取得できませんでした:

 $('#myDraggable').draggable({
  stop: function (event, ui) {
      if (event.srcElement.id != 'myDroppable'){
         // Missed
      }
  }
 });

しかし、問題は、#myDroppable何かが追加されたときに要素を変更していることです。そのため、次に何かをドロップするときは、 ではなく、新しい子の id にevent.srcElement.idなる可能性があります。myDroppable上にオーバーレイを追加することもできますが、スクロールバーがあるとさらに複雑になります。このイベントを処理する別の方法はありますか?

4

1 に答える 1

0
if ($(event.srcElement).parents().andSelf().has("#myDroppable").length === 0)

要素を取得し、親チェーン全体を取得して現在の要素を追加し、「#myDroppable」に一致するセットに減らします。長さが0の場合、ドロップ可能にドロップしません。

そのプラグインについてはよくわかりませんが、通常はthis === event.srcElement

.parents .andSelf .has

于 2011-02-01T02:36:17.670 に答える