0

ドラッグして並べ替えることができるアイテムの膨大なリストがあります。リストが非常に長くなり、親コンテナの高さを超えてしまうと、現在表示されていない位置にアイテムをドラッグすると非常に不便になることに気付きました。

これが例(jsFiddle)です。

最初の要素を1つのジェスチャの最後の要素の直前にドラッグしたいと思います。現在、ドラッグとスクロールを同時に行うことができないため、これは不可能です。子の1つをコンテナの境界近くにドラッグするとすぐに、コンテナを自動スクロールできるようにする設定はありますか?

appendToと同様にさまざまな設定を試しcontainmentましたが、希望する効果が得られた設定はありませんでした。

ソリューションで更新

以下の@Shannonによる回答のおかげで、私はそれを機能させることができました。更新されたソリューションはここにあります

4

1 に答える 1

1

ユーザーがスクロールの途中までドラッグしたら、スクロールイベントを作成する必要があります。とても簡単です。

$(li).drag(function(e) {
    $("ul").scrollTop(function(i, v) {
        var h = $(ul).height();
        var y = e.clientY - h / 2;
        return v + y * 0.1;
    });
});

これはうまくいきませんが、それはあなたがそれにどのようにアプローチしなければならないかについての考えを得ることができるように始まりです、私はちょうど今朝それを完全に終える時間がありませんでした!

于 2012-08-19T21:58:38.837 に答える