0

ソート可能なヘルパーがコンテナーの端に近づくと、ヘルパーが静止していても div が自動的にスクロールされるように、jqueryui のソート可能なリストに独自のスクロール メソッドを実装しました。これは美しく機能し、動作はまさに私が望むものであり、このユースケースでは、jqueryUI のソート可能なウィジェット自体に組み込まれている「スクロール」機能よりもはるかに優れています。

ただし、スクロール中にプレースホルダーの位置は更新されません。

jqueryui ソースコードを詳しく調べると、ヘルパーがドラッグされているときにのみ _rearange メソッドが呼び出されることがわかります。コンテナはスクロールしており、ヘルパー自体は静止しているため、ヘルパー/アイテムの交差をチェックするメソッドは呼び出されず、ユーザーがスクロールを停止してヘルパーを再度ドラッグするまで、プレースホルダーの位置は更新されません。

私がする必要があるのは、コンテナーがスクロールしている間にプレースホルダーの位置が更新されるように、スクロール間隔内から _rearange メソッドをプログラムで呼び出す方法を見つけることです。

これらのメソッドとプロパティに外部からアクセスするにはどうすればよいですか?

どんな助けでも大歓迎です。

4

1 に答える 1

1

標準ウィジェットのプライベートメソッドにアクセスするには、次の2つが必要です。

1.)セレクタウィジェットのインスタンスデータへの参照2.)呼び出す必要のあるプライベートメソッドの名前。

コードを投稿しなかったので、ここではサンプルコードを使用します。ただし、sortableの「_rearrange」メソッドを取得するには、次のようにします。

$('#your-target-selector')。data('sortable')._ rearrange();

于 2013-02-17T19:19:48.850 に答える